Added BaseGlyphSet to part

This commit is contained in:
Willem Cazander 2022-02-03 00:28:30 +01:00
parent ac8eea07c1
commit 30287a48b7
11 changed files with 315 additions and 77 deletions

View file

@ -53,11 +53,17 @@ public class BasePartRenderer extends ImGuiRendererMain {
ImGui.combo("Type", selectedBasePart, items); ImGui.combo("Type", selectedBasePart, items);
int flags = ImGuiTableFlags.ScrollX | ImGuiTableFlags.RowBg | ImGuiTableFlags.BordersOuter | ImGuiTableFlags.BordersV; int flags = ImGuiTableFlags.ScrollX | ImGuiTableFlags.RowBg | ImGuiTableFlags.BordersOuter | ImGuiTableFlags.BordersV;
ImGui.beginTable("base-part", 10, flags); ImGui.beginTable("base-part", 16, flags);
ImGui.tableSetupColumn("Name"); ImGui.tableSetupColumn("BȍőnNaam");
ImGui.tableSetupColumn("Ordinal"); ImGui.tableSetupColumn("TelNul");
ImGui.tableSetupColumn("TelEen");
ImGui.tableSetupColumn("Tone"); ImGui.tableSetupColumn("Tone");
ImGui.tableSetupColumn("Letter"); ImGui.tableSetupColumn("16LBasic");
ImGui.tableSetupColumn("16Greek");
ImGui.tableSetupColumn("16Korean");
ImGui.tableSetupColumn("36LBasic");
ImGui.tableSetupColumn("36Greek");
ImGui.tableSetupColumn("36Arabic");
ImGui.tableSetupColumn("ChinaK"); ImGui.tableSetupColumn("ChinaK");
ImGui.tableSetupColumn("ChinaV"); ImGui.tableSetupColumn("ChinaV");
ImGui.tableSetupColumn("Alt1"); ImGui.tableSetupColumn("Alt1");
@ -69,13 +75,25 @@ public class BasePartRenderer extends ImGuiRendererMain {
for (BãßBȍőnPartʸᴰ<?> part:baseParts) { for (BãßBȍőnPartʸᴰ<?> part:baseParts) {
ImGui.tableNextRow(); ImGui.tableNextRow();
ImGui.tableNextColumn(); ImGui.tableNextColumn();
ImGui.text(part.name()); ImGui.text(part.BȍőnNaam());
ImGui.tableNextColumn(); ImGui.tableNextColumn();
ImGui.text(Integer.toString(part.ordinal())); ImGui.text(Integer.toString(part.BȍőnRangTelNul()));
ImGui.tableNextColumn();
ImGui.text(Integer.toString(part.BȍőnRangTelEen()));
ImGui.tableNextColumn(); ImGui.tableNextColumn();
ImGui.text(part.BȍőnIdentifierTone()); ImGui.text(part.BȍőnIdentifierTone());
ImGui.tableNextColumn(); ImGui.tableNextColumn();
ImGui.text(part.BȍőnIdentifierLetter()); ImGui.text(part.BȍőnGlyphSetNumber16LatinBasic());
ImGui.tableNextColumn();
ImGui.text(part.BȍőnGlyphSetNumber16Greek());
ImGui.tableNextColumn();
ImGui.text(part.BȍőnGlyphSetNumber16Korean());
ImGui.tableNextColumn();
ImGui.text(part.BȍőnGlyphSetNumber36LatinBasic());
ImGui.tableNextColumn();
ImGui.text(part.BȍőnGlyphSetNumber36Greek());
ImGui.tableNextColumn();
ImGui.text(part.BȍőnGlyphSetNumber36Arabic());
ImGui.tableNextColumn(); ImGui.tableNextColumn();
ImGui.text(part.BȍőnChinaKey()); ImGui.text(part.BȍőnChinaKey());
ImGui.tableNextColumn(); ImGui.tableNextColumn();

View file

@ -9,53 +9,53 @@ import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
@BãßBȍőnClassInfoʸᴰ(name = "BaseScript", purpose = "The encoded base scripts.") @BãßBȍőnClassInfoʸᴰ(name = "BaseScript", purpose = "The encoded base scripts.")
public enum BaseGlyphSet implements BãßBȍőnGlyphSetʸᴰ<BaseGlyphSet> { public enum BaseGlyphSet implements BãßBȍőnGlyphSetʸᴰ<BaseGlyphSet> {
BURMESE(new BaseGlyphSetDecimals("\u1040","\u1041","\u1042","\u1043","\u1044","\u1045","\u1046","\u1047","\u1048","\u1049")), BURMESE(new BaseGlyphSetNumber10("\u1040","\u1041","\u1042","\u1043","\u1044","\u1045","\u1046","\u1047","\u1048","\u1049")),
BENGALI(new BaseGlyphSetDecimals("","","","","","","","","","")), BENGALI(new BaseGlyphSetNumber10("","","","","","","","","","")),
SINHALA(new BaseGlyphSetDecimals("","","","","","","","","","")), SINHALA(new BaseGlyphSetNumber10("","","","","","","","","","")),
GREEK(new BaseGlyphSetDecimals("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ"), GREEK(new BaseGlyphSetNumber10("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ"),
new BaseGlyphSetHeximals("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ"), new BaseGlyphSetNumber16("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ"),
new BaseGlyphSetGematria("α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ","ο","π","ϟ","ρ","σ","τ","υ","φ","χ","ψ","ω","ϡ")), new BaseGlyphSetNumber36("α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ","ο","π","ϟ","ρ","σ","τ","υ","φ","χ","ψ","ω","ϡ")),
LATIN_BASIC(new BaseGlyphSetDecimals("0","1","2","3","4","5","6","7","8","9"), LATIN_BASIC(new BaseGlyphSetNumber10("0","1","2","3","4","5","6","7","8","9"),
new BaseGlyphSetHeximals("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"), new BaseGlyphSetNumber16("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"),
new BaseGlyphSetGematria("1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R")), new BaseGlyphSetNumber36("1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R")),
LATIN_DTMF(new BaseGlyphSetDecimals("zero","one","two","three","four","five","six","seven","eight","nine"), LATIN_DTMF(new BaseGlyphSetNumber10("zero","one","two","three","four","five","six","seven","eight","nine"),
new BaseGlyphSetHeximals("1","2","3","A","4","5","6","B","7","8","9","C","*","0","#","D")), new BaseGlyphSetNumber16("1","2","3","A","4","5","6","B","7","8","9","C","*","0","#","D")),
LATIN_SUPER(new BaseGlyphSetDecimals("","¹","²","³","","","","","",""), LATIN_SUPER(new BaseGlyphSetNumber10("","¹","²","³","","","","","",""),
new BaseGlyphSetHeximals("","¹","²","³","","","","","","","","","","","","")), new BaseGlyphSetNumber16("","¹","²","³","","","","","","","","","","","","")),
LATIN_SUB(new BaseGlyphSetDecimals("","","","","","","","","",""), LATIN_SUB(new BaseGlyphSetNumber10("","","","","","","","","",""),
new BaseGlyphSetHeximals("","","","","","","","","","","","","","","","բ")), new BaseGlyphSetNumber16("","","","","","","","","","","","","","","","բ")),
KOREAN(new BaseGlyphSetDecimals("","","","","","","","","",""), KOREAN(new BaseGlyphSetNumber10("","","","","","","","","",""),
new BaseGlyphSetHeximals("","","","","","","","","","","","","","","","")), new BaseGlyphSetNumber16("","","","","","","","","","","","","","","","")),
HEBREW(new BaseGlyphSetDecimals("אֶפֶס","אֶחָד","שְׁתַּיִם","שְׁלֹשָׁה","אַרְבַּע‎","חֲמִשָּׁה‎","שֵׁשׁ‎","שִׁבְעָה","שְׁמוֹנֶה","תִּשְׁעָה‎"), HEBREW(new BaseGlyphSetNumber10("אֶפֶס","אֶחָד","שְׁתַּיִם","שְׁלֹשָׁה","אַרְבַּע‎","חֲמִשָּׁה‎","שֵׁשׁ‎","שִׁבְעָה","שְׁמוֹנֶה","תִּשְׁעָה‎"),
new BaseGlyphSetGematria("א","ב","ג","ד","ה","ו","ז","ח","ט","י","כ","ל","מ","נ","ס ","ע","פ","צ","ק","ר","ש","ת","ך","ם","ן","ף","ץ")), new BaseGlyphSetNumber36("א","ב","ג","ד","ה","ו","ז","ח","ט","י","כ","ל","מ","נ","ס ","ע","פ","צ","ק","ר","ש","ת","ך","ם","ן","ף","ץ")),
ARABIC(new BaseGlyphSetDecimals("٠","١","٢","٣","٤","٥","٦","٧","٨","٩"), ARABIC(new BaseGlyphSetNumber10("٠","١","٢","٣","٤","٥","٦","٧","٨","٩"),
new BaseGlyphSetGematria("ا","ب","ج","د","ه","و","ز","ح","ط","ي","ك","ل","م","ن","س","ع","ف","ص","ق","ر","ش","ت","ث","خ","ذ","ض","ظ")), new BaseGlyphSetNumber36("ا","ب","ج","د","ه","و","ز","ح","ط","ي","ك","ل","م","ن","س","ع","ف","ص","ق","ر","ش","ت","ث","خ","ذ","ض","ظ")),
; ;
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnGlyphSetKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance(); private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnGlyphSetKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
public BãßBȍőnCoffinʸᴰ<BãßBȍőnGlyphSetKeyʸᴰ> GET_BBC() { return BBC; } public BãßBȍőnCoffinʸᴰ<BãßBȍőnGlyphSetKeyʸᴰ> GET_BBC() { return BBC; }
public static int LENGTH() { return values().length; }; public static int LENGTH() { return values().length; };
private BaseGlyphSet(BaseGlyphSetDecimals numbers) { private BaseGlyphSet(BaseGlyphSetNumber10 numbers) {
BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, numbers); BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, numbers);
} }
private BaseGlyphSet(BaseGlyphSetDecimals numbers, BaseGlyphSetGematria gematria) { private BaseGlyphSet(BaseGlyphSetNumber10 numbers, BaseGlyphSetNumber36 gematria) {
BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, numbers); BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, numbers);
BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.GEMATRIA, gematria); BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.GEMATRIA, gematria);
} }
private BaseGlyphSet(BaseGlyphSetDecimals numbers, BaseGlyphSetHeximals hex) { private BaseGlyphSet(BaseGlyphSetNumber10 numbers, BaseGlyphSetNumber16 hex) {
BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, numbers); BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, numbers);
BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.HEXIMALS, hex); BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.HEXIMALS, hex);
} }
private BaseGlyphSet(BaseGlyphSetDecimals numbers, BaseGlyphSetHeximals hex, BaseGlyphSetGematria gematria) { private BaseGlyphSet(BaseGlyphSetNumber10 numbers, BaseGlyphSetNumber16 hex, BaseGlyphSetNumber36 gematria) {
BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, numbers); BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, numbers);
BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.HEXIMALS, hex); BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.HEXIMALS, hex);
BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.GEMATRIA, gematria); BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.GEMATRIA, gematria);

View file

@ -0,0 +1,13 @@
package love.distributedrebirth.numberxd.base2t.glyph;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public interface BaseGlyphSetNumber {
default BaseGlyphSetNumberType BãßNumberType() {
return getClass().getAnnotation(BãßBȍőnGlyphSetNumberInfoʸᴰ.class).base();
}
String BȍőnCharFor(int number);
}

View file

@ -3,7 +3,8 @@ package love.distributedrebirth.numberxd.base2t.glyph;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ; import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class BaseGlyphSetDecimals { @BãßBȍőnGlyphSetNumberInfoʸᴰ(base = BaseGlyphSetNumberType.BASE_10)
public final class BaseGlyphSetNumber10 implements BaseGlyphSetNumber {
private final String char0; private final String char0;
private final String char1; private final String char1;
@ -16,7 +17,7 @@ public class BaseGlyphSetDecimals {
private final String char8; private final String char8;
private final String char9; private final String char9;
public BaseGlyphSetDecimals(String char0, String char1, String char2, String char3, String char4, String char5, public BaseGlyphSetNumber10(String char0, String char1, String char2, String char3, String char4, String char5,
String char6, String char7, String char8, String char9) { String char6, String char7, String char8, String char9) {
super(); super();
this.char0 = char0; this.char0 = char0;
@ -31,7 +32,7 @@ public class BaseGlyphSetDecimals {
this.char9 = char9; this.char9 = char9;
} }
public String getCharFor(int number) { public String BȍőnCharFor(int number) {
switch (number) { switch (number) {
case 0: case 0:
return char0; return char0;

View file

@ -3,7 +3,8 @@ package love.distributedrebirth.numberxd.base2t.glyph;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ; import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class BaseGlyphSetHeximals { @BãßBȍőnGlyphSetNumberInfoʸᴰ(base = BaseGlyphSetNumberType.BASE_16)
public final class BaseGlyphSetNumber16 implements BaseGlyphSetNumber {
private final String char0; private final String char0;
private final String char1; private final String char1;
@ -22,7 +23,7 @@ public class BaseGlyphSetHeximals {
private final String charE; private final String charE;
private final String charF; private final String charF;
public BaseGlyphSetHeximals(String char0, String char1, String char2, String char3, String char4, String char5, public BaseGlyphSetNumber16(String char0, String char1, String char2, String char3, String char4, String char5,
String char6, String char7, String char8, String char9, String charA, String charB, String charC, String char6, String char7, String char8, String char9, String charA, String charB, String charC,
String charD, String charE, String charF) { String charD, String charE, String charF) {
super(); super();
@ -44,7 +45,7 @@ public class BaseGlyphSetHeximals {
this.charF = charF; this.charF = charF;
} }
public String getCharFor(int number) { public String BȍőnCharFor(int number) {
switch (number) { switch (number) {
case 0: case 0:
return char0; return char0;
@ -68,15 +69,15 @@ public class BaseGlyphSetHeximals {
return char9; return char9;
case 10: case 10:
return charA; return charA;
case 20: case 11:
return charB; return charB;
case 30: case 12:
return charC; return charC;
case 40: case 13:
return charD; return charD;
case 50: case 14:
return charE; return charE;
case 60: case 15:
return charF; return charF;
default: default:
throw new IllegalArgumentException("Can't handle higher numbers: "+number); throw new IllegalArgumentException("Can't handle higher numbers: "+number);

View file

@ -3,7 +3,8 @@ package love.distributedrebirth.numberxd.base2t.glyph;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ; import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class BaseGlyphSetGematria { @BãßBȍőnGlyphSetNumberInfoʸᴰ(base = BaseGlyphSetNumberType.BASE_36)
public final class BaseGlyphSetNumber36 implements BaseGlyphSetNumber {
private final String char1; private final String char1;
private final String char2; private final String char2;
@ -33,7 +34,7 @@ public class BaseGlyphSetGematria {
private final String char800; private final String char800;
private final String char900; private final String char900;
public BaseGlyphSetGematria(String char1, String char2, String char3, String char4, String char5, String char6, public BaseGlyphSetNumber36(String char1, String char2, String char3, String char4, String char5, String char6,
String char7, String char8, String char9, String char10, String char20, String char30, String char40, String char7, String char8, String char9, String char10, String char20, String char30, String char40,
String char50, String char60, String char70, String char80, String char90, String char100, String char200, String char50, String char60, String char70, String char80, String char90, String char100, String char200,
String char300, String char400, String char500, String char600, String char700, String char800, String char300, String char400, String char500, String char600, String char700, String char800,
@ -68,7 +69,7 @@ public class BaseGlyphSetGematria {
this.char900 = char900; this.char900 = char900;
} }
public String getCharFor(int number) { public String BȍőnCharFor(int number) {
switch (number) { switch (number) {
case 1: case 1:
return char1; return char1;
@ -128,4 +129,113 @@ public class BaseGlyphSetGematria {
throw new IllegalArgumentException("Can't handle higher numbers: "+number); throw new IllegalArgumentException("Can't handle higher numbers: "+number);
} }
} }
public String getChar1() {
return char1;
}
public String getChar2() {
return char2;
}
public String getChar3() {
return char3;
}
public String getChar4() {
return char4;
}
public String getChar5() {
return char5;
}
public String getChar6() {
return char6;
}
public String getChar7() {
return char7;
}
public String getChar8() {
return char8;
}
public String getChar9() {
return char9;
}
public String getChar10() {
return char10;
}
public String getChar20() {
return char20;
}
public String getChar30() {
return char30;
}
public String getChar40() {
return char40;
}
public String getChar50() {
return char50;
}
public String getChar60() {
return char60;
}
public String getChar70() {
return char70;
}
public String getChar80() {
return char80;
}
public String getChar90() {
return char90;
}
public String getChar100() {
return char100;
}
public String getChar200() {
return char200;
}
public String getChar300() {
return char300;
}
public String getChar400() {
return char400;
}
public String getChar500() {
return char500;
}
public String getChar600() {
return char600;
}
public String getChar700() {
return char700;
}
public String getChar800() {
return char800;
}
public String getChar900() {
return char900;
}
} }

View file

@ -0,0 +1,10 @@
package love.distributedrebirth.numberxd.base2t.glyph;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public enum BaseGlyphSetNumberType {
BASE_10,
BASE_16,
BASE_36
}

View file

@ -0,0 +1,16 @@
package love.distributedrebirth.numberxd.base2t.glyph;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE})
public @interface BãßBȍőnGlyphSetNumberInfoʸᴰ {
BaseGlyphSetNumberType base();
}

View file

@ -7,11 +7,15 @@ import love.distributedrebirth.bassboonyd.BãßBȍőnEnumSetʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public interface BãßBȍőnGlyphSetʸᴰ<T extends BãßBȍőnGlyphSetʸᴰ<T>> extends BãßBȍőnEnumSetʸᴰ<T>, BãßBȍőnCoffinStoreʸᴰ<BãßBȍőnGlyphSetKeyʸᴰ> { public interface BãßBȍőnGlyphSetʸᴰ<T extends BãßBȍőnGlyphSetʸᴰ<T>> extends BãßBȍőnEnumSetʸᴰ<T>, BãßBȍőnCoffinStoreʸᴰ<BãßBȍőnGlyphSetKeyʸᴰ> {
default BaseGlyphSetDecimals BȍőnScriptNumbers() { default BaseGlyphSetNumber10 BȍőnGlyphSetNumber10() {
return GET_BBC().GET_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, BaseGlyphSetDecimals.class); return GET_BBC().GET_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, BaseGlyphSetNumber10.class);
} }
default BaseGlyphSetGematria BȍőnScriptGematria() { default BaseGlyphSetNumber16 BȍőnGlyphSetNumber16() {
return GET_BBC().GET_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, BaseGlyphSetGematria.class); return GET_BBC().GET_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.HEXIMALS, BaseGlyphSetNumber16.class);
}
default BaseGlyphSetNumber36 BȍőnGlyphSetNumber36() {
return GET_BBC().GET_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.GEMATRIA, BaseGlyphSetNumber36.class);
} }
} }

View file

@ -6,6 +6,7 @@ import java.util.stream.Collectors;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ; import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreʸᴰ; import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreʸᴰ;
import love.distributedrebirth.bassboonyd.BãßBȍőnEnumSetʸᴰ; import love.distributedrebirth.bassboonyd.BãßBȍőnEnumSetʸᴰ;
import love.distributedrebirth.numberxd.base2t.glyph.BaseGlyphSet;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public interface BãßBȍőnPartʸᴰ<T extends BãßBȍőnPartʸᴰ<T>> extends BãßBȍőnEnumSetʸᴰ<T>, BãßBȍőnCoffinStoreʸᴰ<BãßBȍőnPartKeyʸᴰ> { public interface BãßBȍőnPartʸᴰ<T extends BãßBȍőnPartʸᴰ<T>> extends BãßBȍőnEnumSetʸᴰ<T>, BãßBȍőnCoffinStoreʸᴰ<BãßBȍőnPartKeyʸᴰ> {
@ -26,13 +27,80 @@ public interface BãßBȍőnPartʸᴰ<T extends BãßBȍőnPartʸᴰ<T>> extends
return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE); return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE);
} }
default String BȍőnIdentifierLetterSupper() { default String BȍőnGlyphSetNumber16Greek() {
return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.CHINA_KEY); return BȍőnGlyphSetNumber16(BaseGlyphSet.GREEK);
} }
default String BȍőnIdentifierLetterGreek() { default String BȍőnGlyphSetNumber16LatinBasic() {
int ordinalOne = BȍőnRangTelEen(); return BȍőnGlyphSetNumber16(BaseGlyphSet.LATIN_BASIC);
return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.CHINA_KEY); }
default String BȍőnGlyphSetNumber16Korean() {
return BȍőnGlyphSetNumber16(BaseGlyphSet.KOREAN);
}
default String BȍőnGlyphSetNumber16(BaseGlyphSet glyphSet) {
T[] values = BãßInstances();
if (values.length < 10) {
return glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(BȍőnRangTelNul());
} else if (values.length < 255) {
StringBuilder buf = new StringBuilder();
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(BȍőnRangTelNul() >> 4));
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(BȍőnRangTelNul() & 0x0F));
return buf.toString();
} else if (values.length < 10000) {
StringBuilder buf = new StringBuilder();
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor((BȍőnRangTelNul() >> 8) & 0x0F));
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor((BȍőnRangTelNul() >> 4) & 0x0F));
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(BȍőnRangTelNul() & 0x0F));
return buf.toString();
} else {
throw new IllegalStateException("Can't handle more than 10000 values.");
}
}
default String BȍőnGlyphSetNumber36Greek() {
return BȍőnGlyphSetNumber36(BaseGlyphSet.GREEK);
}
default String BȍőnGlyphSetNumber36LatinBasic() {
return BȍőnGlyphSetNumber36(BaseGlyphSet.LATIN_BASIC);
}
default String BȍőnGlyphSetNumber36Hebrew() {
return BȍőnGlyphSetNumber36(BaseGlyphSet.HEBREW);
}
default String BȍőnGlyphSetNumber36Arabic() {
return BȍőnGlyphSetNumber36(BaseGlyphSet.ARABIC);
}
default String BȍőnGlyphSetNumber36(BaseGlyphSet glyphSet) {
T[] values = BãßInstances();
if (values.length < 10) {
return glyphSet.BȍőnGlyphSetNumber36().BȍőnCharFor(BȍőnRangTelEen());
} else if (values.length < 100) {
int count = BȍőnRangTelNul();
int mod10 = count % 10 + 1;
int div10 = count / 10 + 1;
//System.out.println("count="+count+" div10="+div10+" mod10="+mod10);
StringBuilder buf = new StringBuilder();
buf.append(glyphSet.BȍőnGlyphSetNumber36().BȍőnCharFor(div10));
buf.append(glyphSet.BȍőnGlyphSetNumber36().BȍőnCharFor(mod10));
return buf.toString();
} else if (values.length < 1000) {
int count = BȍőnRangTelNul();
int mod10 = count % 10 + 1;
int div10 = count / 10 + 1;
int div100 = count / 100 + 1;
StringBuilder buf = new StringBuilder();
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(div10));
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(div100));
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(mod10));
return buf.toString();
} else {
throw new IllegalStateException("Can't handle more than 1000 values.");
}
} }
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")

View file

@ -16,9 +16,6 @@ public class T16PartHexTest {
Assertions.assertNotNull(value.BȍőnIdentifierLetter()); Assertions.assertNotNull(value.BȍőnIdentifierLetter());
Assertions.assertNotNull(value.BȍőnChinaKey()); Assertions.assertNotNull(value.BȍőnChinaKey());
Assertions.assertNotNull(value.BȍőnChinaValue()); Assertions.assertNotNull(value.BȍőnChinaValue());
Assertions.assertNotNull(value.BȍőnAlt1Value());
Assertions.assertNotNull(value.BãßAlt1Name());
Assertions.assertNotNull(value.BãßAlt1Website());
} }
} }