Start with bassboonyd package

This commit is contained in:
Willem Cazander 2022-02-02 16:29:29 +01:00
parent e998603843
commit 645a10ef4c
21 changed files with 66 additions and 38 deletions

View file

@ -1,8 +1,8 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBone;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -10,7 +10,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T02PartBinary")
@BaßBȍőnNaamʸᴰ("T02PartBinary")
public enum T02PartBinary implements BassBone<T02PartBinary> {
PART_1("˧","0", "", "low"),

View file

@ -1,8 +1,8 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBone;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -10,7 +10,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T03PartTrit")
@BaßBȍőnNaamʸᴰ("T03PartTrit")
public enum T03PartTrit implements BassBone<T03PartTrit> {
PART_1("˦","0","","1"),

View file

@ -1,9 +1,9 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -11,7 +11,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T04PartQuad")
@BaßBȍőnNaamʸᴰ("T04PartQuad")
@BassBoneAlt1Info(name="Cardinal direction", website="https://simple.wikipedia.org/wiki/Cardinal_direction")
public enum T04PartQuad implements BassBoneAlt1<T04PartQuad> {

View file

@ -1,10 +1,10 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt2;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt2Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -12,7 +12,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T05PartPental")
@BaßBȍőnNaamʸᴰ("T05PartPental")
@BassBoneAlt1Info(name="Pentagram", website="https://en.wikipedia.org/wiki/Pentagram")
@BassBoneAlt2Info(name="Pythagorean Interpretations", website="http://wisdomofhypatia.com/OM/BA/PP.html")
public enum T05PartPental implements BassBoneAlt2<T05PartPental> {

View file

@ -1,9 +1,9 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -13,7 +13,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T06PartSeximal")
@BaßBȍőnNaamʸᴰ("T06PartSeximal")
@BassBoneAlt1Info(name="ADFGVX cipher", website="https://en.wikipedia.org/wiki/ADFGVX_cipher")
public enum T06PartSeximal implements BassBoneAlt1<T06PartSeximal> {

View file

@ -1,9 +1,9 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -11,7 +11,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T07PartPlanIt")
@BaßBȍőnNaamʸᴰ("T07PartPlanIt")
@BassBoneAlt1Info(name="Fallen sign", website="https://en.wikipedia.org/wiki/Classical_planet#Western_astrology")
public enum T07PartPlanIt implements BassBoneAlt1<T07PartPlanIt> {

View file

@ -1,11 +1,11 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneShiftBits;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt2;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt2Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -13,7 +13,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T08PartOctal")
@BaßBȍőnNaamʸᴰ("T08PartOctal")
@BassBoneAlt1Info(name="Absolute Tone Sequence", website="https://en.wikipedia.org/wiki/Tone_letter")
@BassBoneAlt2Info(name="Relative Tone Sequence", website="https://en.wikipedia.org/wiki/Tone_letter")
public enum T08PartOctal implements BassBoneAlt2<T08PartOctal>,BassBoneShiftBits<T08PartOctal> {

View file

@ -1,12 +1,12 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt2Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt3Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt4;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt4Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -14,7 +14,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T10PartDecimal")
@BaßBȍőnNaamʸᴰ("T10PartDecimal")
@BassBoneAlt1Info(name="Korean numerals", website="https://en.wikipedia.org/wiki/Korean_numerals")
@BassBoneAlt2Info(name="Burmese numerals", website="https://en.wikipedia.org/wiki/Burmese_numerals")
@BassBoneAlt3Info(name="Bengali numerals", website="https://en.wikipedia.org/wiki/Bengali_numerals")

View file

@ -1,9 +1,9 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -11,7 +11,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T11PartUndecimal")
@BaßBȍőnNaamʸᴰ("T11PartUndecimal")
@BassBoneAlt1Info(name="Tamil numerals", website="https://en.wikipedia.org/wiki/Tamil_numerals")
public enum T11PartUndecimal implements BassBoneAlt1<T11PartUndecimal> {

View file

@ -1,9 +1,9 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -11,7 +11,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T12PartUncial")
@BaßBȍőnNaamʸᴰ("T12PartUncial")
@BassBoneAlt1Info(name="Transdecimal symbols", website="https://en.wikipedia.org/wiki/Duodecimal#Transdecimal_symbols")
public enum T12PartUncial implements BassBoneAlt1<T12PartUncial> {

View file

@ -1,9 +1,9 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -11,7 +11,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T16PartHex")
@BaßBȍőnNaamʸᴰ("T16PartHex")
@BassBoneAlt1Info(name="Dual-tone multi-frequency signaling", website="https://en.wikipedia.org/wiki/Dual-tone_multi-frequency_signaling")
public enum T16PartHex implements BassBoneAlt1<T16PartHex> {

View file

@ -5,12 +5,12 @@ import java.util.Collections;
import java.util.Map;
import java.util.stream.Collectors;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt1Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt2Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt3;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneAlt3Info;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -18,7 +18,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T20PartScore")
@BaßBȍőnNaamʸᴰ("T20PartScore")
@BassBoneAlt1Info(name="Vigesimal", website="https://en.wikipedia.org/wiki/Vigesimal#Places")
@BassBoneAlt2Info(name="Vigesimal Alternative", website="https://en.wikipedia.org/wiki/Vigesimal#Places")
@BassBoneAlt3Info(name="Open Location Code", website="https://en.wikipedia.org/wiki/Open_Location_Code")

View file

@ -1,8 +1,8 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.numberxd.base2t.bone.BassBone;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneCoffin;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneName;
import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
/**
@ -10,7 +10,7 @@ import love.distributedrebirth.numberxd.base2t.bone.BassBoneStoreKey;
*
* @author willemtsade ©Δ 仙上主天
*/
@BassBoneName("T60Sexagesimal")
@BaßBȍőnNaamʸᴰ("T60Sexagesimal")
public enum T60PartSexagesimal implements BassBone<T60PartSexagesimal> {
PART_1 ("˧˩˥","ια","","cow"),

View file

@ -3,15 +3,18 @@ package love.distributedrebirth.numberxd.base2t.bone;
import java.util.Map;
import java.util.stream.Collectors;
import love.distributedrebirth.bassboonyd.BaßBȍőnNaamʸᴰ;
import love.distributedrebirth.bassboonyd.BaßBȍőnEnumSetʸᴰ;
/**
*
*
* @author willemtsade ©Δ 仙上主天
*/
public interface BassBone<T extends BassBone<T>> extends BassBoneEnumSet<T>, BassBoneStore {
public interface BassBone<T extends BassBone<T>> extends BaßBȍőnEnumSetʸᴰ<T>, BassBoneStore {
default String staticBoneNaam() {
return getClass().getAnnotation(BassBoneName.class).value();
return getClass().getAnnotation(BaßBȍőnNaamʸᴰ.class).value();
}
default String getIdentifierTone() {

View file

@ -1,17 +0,0 @@
package love.distributedrebirth.numberxd.base2t.bone;
/**
*
*
* @author willemtsade ©Δ 仙上主天
*/
public interface BassBoneEnum<T> {
int ordinal();
String name();
default String naam() {
return name(); // Deutsche code
}
}

View file

@ -1,73 +0,0 @@
package love.distributedrebirth.numberxd.base2t.bone;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import java.util.function.Consumer;
import java.util.stream.Stream;
/**
*
*
* @author willemtsade ©Δ 仙上主天
*/
public interface BassBoneEnumSet<T> extends BassBoneEnum<T> {
@SuppressWarnings("unchecked")
default T[] staticInstances() {
try {
Object result = getClass().getMethod("values").invoke(null);
return (T[]) result;
} catch (Exception e) {
throw new RuntimeException(e);
}
}
default List<T> staticInstancesList() {
return Arrays.asList(staticInstances());
}
default Iterator<T> staticInstancesIterator() {
return staticInstancesList().iterator();
}
default Stream<T> staticInstancesStream() {
return staticInstancesList().stream();
}
default T volgende() {
T[] values = staticInstances();
int resultIndex = 0;
for (int i=0;i<values.length;i++) {
if (this == values[i]) {
resultIndex = i + 1;
break;
}
}
if (resultIndex == values.length) {
resultIndex = 0;
}
return values[resultIndex];
}
default T vorige() {
T[] values = staticInstances();
int resultIndex = 0;
for (int i=0;i<values.length;i++) {
if (this == values[i]) {
resultIndex = i - 1;
break;
}
}
if (resultIndex < 0) {
resultIndex = values.length - 1;
}
return values[resultIndex];
}
default void staticVoorElk(Consumer<T> consumer) {
for (T value:staticInstances()) {
consumer.accept(value);
}
}
}

View file

@ -1,18 +0,0 @@
package love.distributedrebirth.numberxd.base2t.bone;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* Defines the bean name.
*
* @author willemtsade ©Δ 仙上主天
*/
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE})
public @interface BassBoneName {
String value();
}