Moved to package prefix
This commit is contained in:
parent
2a7ff2182e
commit
58264ebe4c
106 changed files with 3 additions and 4 deletions
8
demo4d-numberxd/build.gradle
Normal file
8
demo4d-numberxd/build.gradle
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
sourceCompatibility = appJvmCode
|
||||
[compileJava, compileTestJava]*.options*.encoding = appEncoding
|
||||
|
||||
sourceSets.main.java.srcDirs = [ "src/main/"]
|
||||
sourceSets.main.resources.srcDirs = [ "src/resources/" ]
|
||||
sourceSets.test.java.srcDirs = [ "src/test/"]
|
||||
sourceSets.test.resources.srcDirs = [ "src/test-resources/" ]
|
||||
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
abstract public class AbstractBaseGetậlLevel0<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> implements BaseGetậlLevel0<T,V> {
|
||||
|
||||
protected int valueIndex0;
|
||||
|
||||
@Override
|
||||
public void setValueIndex0(int valueIndex0) {
|
||||
this.valueIndex0 = valueIndex0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex0() {
|
||||
return valueIndex0;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
abstract public class AbstractBaseGetậlLevel1<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlLevel0<T,V> implements BaseGetậlLevel1<T,V> {
|
||||
|
||||
protected int valueIndex1;
|
||||
|
||||
@Override
|
||||
public void setValueIndex1(int valueIndex1) {
|
||||
this.valueIndex1 = valueIndex1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex1() {
|
||||
return valueIndex1;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
abstract public class AbstractBaseGetậlLevel2<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlLevel1<T,V> implements BaseGetậlLevel2<T,V> {
|
||||
|
||||
protected int valueIndex2;
|
||||
|
||||
@Override
|
||||
public void setValueIndex2(int valueIndex1) {
|
||||
this.valueIndex1 = valueIndex1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex2() {
|
||||
return valueIndex1;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
abstract public class AbstractGroßGetậlŌṁ1ⁿᴰ<T extends BaseGetậl<T,V009Tyte>> extends AbstractBaseGetậlLevel1<T,V009Tyte> {
|
||||
|
||||
private V144Tocta[] values;
|
||||
private int valuesLength;
|
||||
private byte fractalLevel;
|
||||
|
||||
public AbstractGroßGetậlŌṁ1ⁿᴰ(byte fractalLevel) {
|
||||
this.fractalLevel = fractalLevel;
|
||||
this.valuesLength = resolveFractalLevel(fractalLevel);
|
||||
this.values = new V144Tocta[valuesLength];
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V144Tocta();
|
||||
}
|
||||
}
|
||||
|
||||
public AbstractGroßGetậlŌṁ1ⁿᴰ(byte fractalLevel, BaseIteratorOctal values) {
|
||||
this.fractalLevel = fractalLevel;
|
||||
this.valuesLength = resolveFractalLevel(fractalLevel);
|
||||
this.values = new V144Tocta[valuesLength];
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V144Tocta(values);
|
||||
}
|
||||
}
|
||||
|
||||
abstract protected int resolveFractalLevel(byte level);
|
||||
|
||||
public V009Tyte getValue() {
|
||||
return values[valueIndex1].getTytePart(T16PartHex.values()[valueIndex0]);
|
||||
}
|
||||
|
||||
public byte getFractalLevel() {
|
||||
return fractalLevel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex0Length() {
|
||||
return T16PartHex.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex1Length() {
|
||||
return valuesLength;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T12PartUncial;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
abstract public class AbstractGroßGetậlŌṁ6ˢᴰ<T extends BaseGetậl<T,V009Tyte>> extends AbstractBaseGetậlLevel2<T,V009Tyte> {
|
||||
|
||||
private V144Tocta[][] values;
|
||||
private int valuesLength;
|
||||
private byte fractalLevel;
|
||||
|
||||
public AbstractGroßGetậlŌṁ6ˢᴰ(byte fractalLevel) {
|
||||
this.fractalLevel = fractalLevel;
|
||||
this.valuesLength = resolveFractalLevel(fractalLevel);
|
||||
this.values = new V144Tocta[T12PartUncial.LENGTH()][valuesLength];
|
||||
for (int x=0;x<this.values.length;x++) {
|
||||
for (int y=0;y<this.values[x].length;y++) {
|
||||
this.values[x][y] = new V144Tocta();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public AbstractGroßGetậlŌṁ6ˢᴰ(byte fractalLevel, BaseIteratorOctal values) {
|
||||
this.fractalLevel = fractalLevel;
|
||||
this.valuesLength = resolveFractalLevel(fractalLevel);
|
||||
this.values = new V144Tocta[T12PartUncial.LENGTH()][valuesLength];
|
||||
for (int x=0;x<this.values.length;x++) {
|
||||
for (int y=0;y<this.values[x].length;y++) {
|
||||
this.values[x][y] = new V144Tocta(values);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
abstract protected int resolveFractalLevel(byte level);
|
||||
|
||||
public V009Tyte getValue() {
|
||||
return values[valueIndex1][valueIndex2].getTytePart(T16PartHex.values()[valueIndex0]);
|
||||
}
|
||||
|
||||
public byte getFractalLevel() {
|
||||
return fractalLevel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex0Length() {
|
||||
return T16PartHex.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex1Length() {
|
||||
return T12PartUncial.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex2Length() {
|
||||
return valuesLength;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,12 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BaseGetậl<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> {
|
||||
|
||||
V getValue();
|
||||
|
||||
T toClone();
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BaseGetậlLevel0<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậl<T,V> {
|
||||
|
||||
void setValueIndex0(int valueIndex0);
|
||||
|
||||
int getValueIndex0();
|
||||
|
||||
int getValueIndex0Length();
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BaseGetậlLevel1<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlLevel0<T,V> {
|
||||
|
||||
void setValueIndex1(int valueIndex1);
|
||||
|
||||
int getValueIndex1();
|
||||
|
||||
int getValueIndex1Length();
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BaseGetậlLevel2<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlLevel1<T,V> {
|
||||
|
||||
void setValueIndex2(int valueIndex1);
|
||||
|
||||
int getValueIndex2();
|
||||
|
||||
int getValueIndex2Length();
|
||||
}
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BaseGetậlLevel3<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlLevel2<T,V> {
|
||||
|
||||
void setValueIndex3(int valueIndex1);
|
||||
|
||||
int getValueIndex3();
|
||||
|
||||
int getValueIndex3Length();
|
||||
}
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
||||
|
||||
/**
|
||||
* Holds an 144 bit fraction.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class GroßGetậl1ⁿᴰ extends AbstractBaseGetậlLevel0<GroßGetậl1ⁿᴰ,V009Tyte> {
|
||||
|
||||
//public static int NUMERATOR_SIZE = 7;
|
||||
//public static int DENOMINATOR_SIZE = 9;
|
||||
//public static int BIT_COUNT = V144Tocta.BIT_COUNT;
|
||||
//private final V009Tyte[] numerator = new V009Tyte[NUMERATOR_SIZE];
|
||||
//private final V009Tyte[] denominator = new V009Tyte[DENOMINATOR_SIZE];
|
||||
private final V144Tocta value;
|
||||
|
||||
public GroßGetậl1ⁿᴰ() {
|
||||
this(new V144Tocta());
|
||||
}
|
||||
|
||||
public GroßGetậl1ⁿᴰ(BaseIteratorOctal values) {
|
||||
this(new V144Tocta(values));
|
||||
}
|
||||
|
||||
public GroßGetậl1ⁿᴰ(BaseIteratorTyte values) {
|
||||
this(new V144Tocta(values));
|
||||
}
|
||||
|
||||
public GroßGetậl1ⁿᴰ(V144Tocta value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V009Tyte getValue() {
|
||||
return value.getTytePart(T16PartHex.values()[valueIndex0]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex0Length() {
|
||||
return T16PartHex.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậl1ⁿᴰ toClone() {
|
||||
return new GroßGetậl1ⁿᴰ(value.toClone());
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.numberxd.base2t.part.T12PartUncial;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
|
||||
|
||||
/**
|
||||
* Holds an 864 bit fraction.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class GroßGetậl6ˢᴰ extends AbstractBaseGetậlLevel1<GroßGetậl6ˢᴰ,V009Tyte> {
|
||||
|
||||
private final V144Tocta[] values = new V144Tocta[T12PartUncial.LENGTH()];
|
||||
|
||||
public GroßGetậl6ˢᴰ() {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V144Tocta();
|
||||
}
|
||||
}
|
||||
|
||||
public GroßGetậl6ˢᴰ(BaseIteratorOctal values) {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V144Tocta(values);
|
||||
}
|
||||
}
|
||||
|
||||
public V009Tyte getValue() {
|
||||
return values[valueIndex1].getTytePart(T16PartHex.values()[valueIndex0]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex0Length() {
|
||||
return T16PartHex.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex1Length() {
|
||||
return T12PartUncial.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậl6ˢᴰ toClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
cloneStack.addIterator(this.values[i].iteratorOctalsByClone());
|
||||
}
|
||||
return new GroßGetậl6ˢᴰ(cloneStack);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class GroßGetậlŌṁDiamond1ⁿᴰ extends AbstractGroßGetậlŌṁ1ⁿᴰ<GroßGetậlŌṁDiamond1ⁿᴰ> {
|
||||
|
||||
// 0th = 1 * V144Tocta (1)
|
||||
// 1th = 1+3 * V144Tocta (4)
|
||||
// 2th = 1+3+6 * V144Tocta (10)
|
||||
// 3th = 1+3+6+14 * V144Tocta (24)
|
||||
// etc
|
||||
|
||||
public GroßGetậlŌṁDiamond1ⁿᴰ(byte level) {
|
||||
super(level);
|
||||
}
|
||||
|
||||
public GroßGetậlŌṁDiamond1ⁿᴰ(byte level, BaseIteratorOctal values) {
|
||||
super(level, values);
|
||||
}
|
||||
|
||||
protected int resolveFractalLevel(byte level) {
|
||||
// TODO
|
||||
return level;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậlŌṁDiamond1ⁿᴰ toClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int x=0;x<getValueIndex0Length();x++) {
|
||||
setValueIndex0(x);
|
||||
for (int y=0;y<getValueIndex1Length();y++) {
|
||||
setValueIndex1(y);
|
||||
cloneStack.addIterator(getValue().iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
return new GroßGetậlŌṁDiamond1ⁿᴰ(getFractalLevel(), cloneStack);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class GroßGetậlŌṁDiamond6ˢᴰ extends AbstractGroßGetậlŌṁ6ˢᴰ<GroßGetậlŌṁDiamond6ˢᴰ> {
|
||||
|
||||
// 0th = 1 * V144Tocta (1)
|
||||
// 1th = 1+3 * V144Tocta (4)
|
||||
// 2th = 1+3+6 * V144Tocta (10)
|
||||
// 3th = 1+3+6+14 * V144Tocta (24)
|
||||
// etc
|
||||
|
||||
public GroßGetậlŌṁDiamond6ˢᴰ(byte level) {
|
||||
super(level);
|
||||
}
|
||||
|
||||
public GroßGetậlŌṁDiamond6ˢᴰ(byte level, BaseIteratorOctal values) {
|
||||
super(level, values);
|
||||
}
|
||||
|
||||
protected int resolveFractalLevel(byte level) {
|
||||
// TODO
|
||||
return level;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậlŌṁDiamond6ˢᴰ toClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int x=0;x<getValueIndex0Length();x++) {
|
||||
setValueIndex0(x);
|
||||
for (int y=0;y<getValueIndex1Length();y++) {
|
||||
setValueIndex1(y);
|
||||
for (int z=0;z<getValueIndex1Length();z++) {
|
||||
setValueIndex1(z);
|
||||
cloneStack.addIterator(getValue().iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
}
|
||||
return new GroßGetậlŌṁDiamond6ˢᴰ(getFractalLevel(), cloneStack);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class GroßGetậlŌṁHyperStàr1ⁿᴰ extends AbstractGroßGetậlŌṁ1ⁿᴰ<GroßGetậlŌṁHyperStàr1ⁿᴰ> {
|
||||
|
||||
// 0th = V144Tocta
|
||||
// 1th = 5 * V144Tocta
|
||||
// 2th = 5 * 12 * V144Tocta
|
||||
// etc
|
||||
|
||||
public GroßGetậlŌṁHyperStàr1ⁿᴰ(byte level) {
|
||||
super(level);
|
||||
}
|
||||
|
||||
public GroßGetậlŌṁHyperStàr1ⁿᴰ(byte level, BaseIteratorOctal values) {
|
||||
super(level, values);
|
||||
}
|
||||
|
||||
protected int resolveFractalLevel(byte level) {
|
||||
// TODO
|
||||
return level;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậlŌṁHyperStàr1ⁿᴰ toClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int x=0;x<getValueIndex0Length();x++) {
|
||||
setValueIndex0(x);
|
||||
for (int y=0;y<getValueIndex1Length();y++) {
|
||||
setValueIndex1(y);
|
||||
cloneStack.addIterator(getValue().iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
return new GroßGetậlŌṁHyperStàr1ⁿᴰ(getFractalLevel(), cloneStack);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class GroßGetậlŌṁHyperStàr6ˢᴰ extends AbstractGroßGetậlŌṁ6ˢᴰ<GroßGetậlŌṁHyperStàr6ˢᴰ> {
|
||||
|
||||
// 0th = V144Tocta
|
||||
// 1th = 5 * V144Tocta
|
||||
// 2th = 5 * 12 * V144Tocta
|
||||
// etc
|
||||
|
||||
public GroßGetậlŌṁHyperStàr6ˢᴰ(byte level) {
|
||||
super(level);
|
||||
}
|
||||
|
||||
public GroßGetậlŌṁHyperStàr6ˢᴰ(byte level, BaseIteratorOctal values) {
|
||||
super(level, values);
|
||||
}
|
||||
|
||||
protected int resolveFractalLevel(byte level) {
|
||||
// TODO
|
||||
return level;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậlŌṁHyperStàr6ˢᴰ toClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int x=0;x<getValueIndex0Length();x++) {
|
||||
setValueIndex0(x);
|
||||
for (int y=0;y<getValueIndex1Length();y++) {
|
||||
setValueIndex1(y);
|
||||
for (int z=0;z<getValueIndex1Length();z++) {
|
||||
setValueIndex1(z);
|
||||
cloneStack.addIterator(getValue().iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
}
|
||||
return new GroßGetậlŌṁHyperStàr6ˢᴰ(getFractalLevel(), cloneStack);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,175 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T04PartQuad;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V036Teger;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class Gê̄ldGetậl extends AbstractBaseGetậlLevel0<Gê̄ldGetậl,V009Tyte> {
|
||||
|
||||
private final V036Teger value;
|
||||
private final double totalDecimalValue;
|
||||
private static final Character LEFT_TO_RIGHT_MARK = 0x200E;
|
||||
private static final Character RIGHT_TO_LEFT_MARK = 0x200F;
|
||||
|
||||
public Gê̄ldGetậl(V036Teger value) {
|
||||
this.value = value;
|
||||
this.totalDecimalValue = calculateDecimalValue();
|
||||
}
|
||||
|
||||
public Gê̄ldGetậl(String money) {
|
||||
if (money == null) {
|
||||
throw new NullPointerException("Can't parse null money");
|
||||
}
|
||||
if (money.isEmpty()) {
|
||||
throw new IllegalArgumentException("Can't parse zero money length");
|
||||
}
|
||||
if (money.length() > 8) { // RL + 4 chars + 3 vowels
|
||||
throw new IllegalArgumentException("Money length should not exceed 8 codepoints");
|
||||
}
|
||||
List<Gê̄ldGetậlÅtHebrew> result = new ArrayList<>();
|
||||
|
||||
Gê̄ldGetậlÅtHebrew geldDigit = null;
|
||||
for (int i=0;i<money.length();i++) {
|
||||
char codePoint = (char) money.codePointAt(i);
|
||||
if (LEFT_TO_RIGHT_MARK.equals(codePoint)) {
|
||||
continue;
|
||||
}
|
||||
if (RIGHT_TO_LEFT_MARK.equals(codePoint)) {
|
||||
continue;
|
||||
}
|
||||
if (geldDigit != null) {
|
||||
Gê̄ldGetậlÅtHebrewVowel vowel = Gê̄ldGetậlÅtHebrewVowel.valueOfCharacter(codePoint);
|
||||
if (!Gê̄ldGetậlÅtHebrewVowel.NONE.equals(vowel)) {
|
||||
geldDigit.setVowel(vowel);
|
||||
result.add(geldDigit);
|
||||
geldDigit = null;
|
||||
continue;
|
||||
} else {
|
||||
result.add(geldDigit);
|
||||
}
|
||||
}
|
||||
Gê̄ldGetậlÅtHebrewLetter letter = Gê̄ldGetậlÅtHebrewLetter.valueOfCharacter(codePoint);
|
||||
if (Gê̄ldGetậlÅtHebrewLetter.NONE.equals(letter)) {
|
||||
throw new IllegalArgumentException("Unknown fraction codepoint: 0x"+Integer.toHexString(codePoint));
|
||||
}
|
||||
geldDigit = new Gê̄ldGetậlÅtHebrew(letter);
|
||||
}
|
||||
if (geldDigit != null) {
|
||||
result.add(geldDigit);
|
||||
}
|
||||
|
||||
if (result.isEmpty()) {
|
||||
throw new IllegalArgumentException("No hebrew money found");
|
||||
}
|
||||
Gê̄ldGetậlÅtHebrew full = result.get(0);
|
||||
Gê̄ldGetậlÅtHebrew deelA = null;
|
||||
Gê̄ldGetậlÅtHebrew deelB = null;
|
||||
Gê̄ldGetậlÅtHebrew deelC = null;
|
||||
if (result.size() > 1) {
|
||||
deelA = result.get(1);
|
||||
} else {
|
||||
deelA = new Gê̄ldGetậlÅtHebrew();
|
||||
}
|
||||
if (result.size() > 2) {
|
||||
deelB = result.get(2);
|
||||
} else {
|
||||
deelB = new Gê̄ldGetậlÅtHebrew();
|
||||
}
|
||||
if (result.size() > 3) {
|
||||
deelC = result.get(3);
|
||||
} else {
|
||||
deelC = new Gê̄ldGetậlÅtHebrew();
|
||||
}
|
||||
value = new V036Teger();
|
||||
value.setTytePart(T04PartQuad.PART_1, full.toTyte());
|
||||
value.setTytePart(T04PartQuad.PART_2, deelA.toTyte());
|
||||
value.setTytePart(T04PartQuad.PART_3, deelB.toTyte());
|
||||
value.setTytePart(T04PartQuad.PART_4, deelC.toTyte());
|
||||
this.totalDecimalValue = calculateDecimalValue();
|
||||
}
|
||||
|
||||
private double calculateDecimalValue() {
|
||||
Gê̄ldGetậlÅtHebrew nummerAlphabet = new Gê̄ldGetậlÅtHebrew(value.getTytePart(T04PartQuad.PART_1));
|
||||
Gê̄ldGetậlÅtHebrew nummerDeelA = new Gê̄ldGetậlÅtHebrew(value.getTytePart(T04PartQuad.PART_2));
|
||||
Gê̄ldGetậlÅtHebrew nummerDeelB = new Gê̄ldGetậlÅtHebrew(value.getTytePart(T04PartQuad.PART_3));
|
||||
Gê̄ldGetậlÅtHebrew nummerDeelC = new Gê̄ldGetậlÅtHebrew(value.getTytePart(T04PartQuad.PART_4));
|
||||
boolean hasFourDigits =
|
||||
!Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelA.getLetter()) &&
|
||||
!Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelB.getLetter()) &&
|
||||
!Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelC.getLetter());
|
||||
double totalDecimalValue = nummerAlphabet.toDecimalValue(hasFourDigits);
|
||||
if (!Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelA.getLetter())) {
|
||||
totalDecimalValue += nummerDeelA.toDecimalValue(false);
|
||||
}
|
||||
if (!Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelB.getLetter())) {
|
||||
totalDecimalValue += nummerDeelB.toDecimalValue(false);
|
||||
}
|
||||
if (!Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelC.getLetter())) {
|
||||
totalDecimalValue += nummerDeelC.toDecimalValue(false);
|
||||
}
|
||||
return totalDecimalValue;
|
||||
}
|
||||
|
||||
public double getTotalDecimalValue() {
|
||||
return totalDecimalValue;
|
||||
}
|
||||
|
||||
public String toHebrewString() {
|
||||
return toHebrewString(false);
|
||||
}
|
||||
|
||||
public String toHebrewString(boolean reverse) {
|
||||
Gê̄ldGetậlÅtHebrew nummerAlphabet = new Gê̄ldGetậlÅtHebrew(value.getTytePart(T04PartQuad.PART_1));
|
||||
Gê̄ldGetậlÅtHebrew nummerDeelA = new Gê̄ldGetậlÅtHebrew(value.getTytePart(T04PartQuad.PART_2));
|
||||
Gê̄ldGetậlÅtHebrew nummerDeelB = new Gê̄ldGetậlÅtHebrew(value.getTytePart(T04PartQuad.PART_3));
|
||||
Gê̄ldGetậlÅtHebrew nummerDeelC = new Gê̄ldGetậlÅtHebrew(value.getTytePart(T04PartQuad.PART_4));
|
||||
StringBuilder buf = new StringBuilder();
|
||||
buf.append(RIGHT_TO_LEFT_MARK);
|
||||
buf.append(nummerAlphabet.getLetter().getCharacter());
|
||||
if (!Gê̄ldGetậlÅtHebrewVowel.NONE.equals(nummerAlphabet.getVowel())) {
|
||||
buf.append(nummerAlphabet.getVowel().getCharacter());
|
||||
}
|
||||
if (!Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelA.getLetter())) {
|
||||
buf.append(nummerDeelA.getLetter().getCharacter());
|
||||
if (!Gê̄ldGetậlÅtHebrewVowel.NONE.equals(nummerDeelA.getVowel())) {
|
||||
buf.append(nummerDeelA.getVowel().getCharacter());
|
||||
}
|
||||
}
|
||||
if (!Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelB.getLetter())) {
|
||||
buf.append(nummerDeelB.getLetter().getCharacter());
|
||||
if (!Gê̄ldGetậlÅtHebrewVowel.NONE.equals(nummerDeelB.getVowel())) {
|
||||
buf.append(nummerDeelB.getVowel().getCharacter());
|
||||
}
|
||||
}
|
||||
if (!Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelC.getLetter())) {
|
||||
buf.append(nummerDeelC.getLetter().getCharacter());
|
||||
if (!Gê̄ldGetậlÅtHebrewVowel.NONE.equals(nummerDeelC.getVowel())) {
|
||||
buf.append(nummerDeelC.getVowel().getCharacter());
|
||||
}
|
||||
}
|
||||
if (reverse) {
|
||||
buf.reverse(); // ImGui skips RL marker so renders wrong....
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex0Length() {
|
||||
return T04PartQuad.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public V009Tyte getValue() {
|
||||
return value.getTytePart(T04PartQuad.values()[valueIndex0]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Gê̄ldGetậl toClone() {
|
||||
return new Gê̄ldGetậl(value.toClone());
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,70 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T03PartTrit;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class Gê̄ldGetậlÅtHebrew {
|
||||
|
||||
private static final double NUMERATOR_ONE = 1d;
|
||||
private static final int FRACTION_POWER = 10;
|
||||
private Gê̄ldGetậlÅtHebrewLetter letter;
|
||||
private Gê̄ldGetậlÅtHebrewVowel vowel;
|
||||
|
||||
public Gê̄ldGetậlÅtHebrew() {
|
||||
this.letter = Gê̄ldGetậlÅtHebrewLetter.NONE;
|
||||
this.vowel = Gê̄ldGetậlÅtHebrewVowel.NONE;
|
||||
}
|
||||
|
||||
public Gê̄ldGetậlÅtHebrew(Gê̄ldGetậlÅtHebrewLetter letter) {
|
||||
this.letter = letter;
|
||||
this.vowel = Gê̄ldGetậlÅtHebrewVowel.NONE;
|
||||
}
|
||||
|
||||
public Gê̄ldGetậlÅtHebrew(V009Tyte tyte) {
|
||||
int value0 = tyte.getValue(T03PartTrit.PART_1).getValue().ordinalOf(T08PartOctal.PART_1);
|
||||
int value1 = tyte.getValue(T03PartTrit.PART_2).getValue().ordinalOf(T08PartOctal.PART_2);
|
||||
int value2 = tyte.getValue(T03PartTrit.PART_3).getValue().ordinalOf(T08PartOctal.PART_3);
|
||||
int combinedValue = value0 + value1 + value2;
|
||||
letter = Gê̄ldGetậlÅtHebrewLetter.indexOf(combinedValue);
|
||||
vowel = Gê̄ldGetậlÅtHebrewVowel.indexOf(combinedValue >> Gê̄ldGetậlÅtHebrewLetter.SHIFT_5);
|
||||
}
|
||||
|
||||
public V009Tyte toTyte() {
|
||||
int combinedValue = letter.ordinal() + (vowel.ordinal() << Gê̄ldGetậlÅtHebrewLetter.SHIFT_5);
|
||||
T08PartOctal value0 = T08PartOctal.indexOf(T08PartOctal.PART_1, combinedValue);
|
||||
T08PartOctal value1 = T08PartOctal.indexOf(T08PartOctal.PART_2, combinedValue);
|
||||
T08PartOctal value2 = T08PartOctal.indexOf(T08PartOctal.PART_3, combinedValue);
|
||||
return new V009Tyte(value0, value1, value2);
|
||||
}
|
||||
|
||||
public double toDecimalValue(boolean firstChar) {
|
||||
double fraction = letter.getDecimal();
|
||||
if (firstChar) {
|
||||
return fraction; // use full value
|
||||
}
|
||||
if (!Gê̄ldGetậlÅtHebrewVowel.NONE.equals(vowel)) {
|
||||
fraction = fraction * Math.pow(FRACTION_POWER, vowel.getFractionOffset());
|
||||
}
|
||||
double result = NUMERATOR_ONE/fraction;
|
||||
return result;
|
||||
}
|
||||
|
||||
public Gê̄ldGetậlÅtHebrewLetter getLetter() {
|
||||
return letter;
|
||||
}
|
||||
|
||||
public void setLetter(Gê̄ldGetậlÅtHebrewLetter letter) {
|
||||
this.letter = letter;
|
||||
}
|
||||
|
||||
public Gê̄ldGetậlÅtHebrewVowel getVowel() {
|
||||
return vowel;
|
||||
}
|
||||
|
||||
public void setVowel(Gê̄ldGetậlÅtHebrewVowel vowel) {
|
||||
this.vowel = vowel;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,106 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @author willemtsade ©Δ∞ 仙上主天
|
||||
*/
|
||||
public enum Gê̄ldGetậlÅtHebrewLetter {
|
||||
// Unicode is horror in any language else than ascii;
|
||||
// VS Alphabet order
|
||||
// VS Unicode order
|
||||
// VS Gematria order <== leading but with other decimals
|
||||
|
||||
NONE (0, (char) 0x05EF),
|
||||
|
||||
LETTER_1 (1, (char) 0x05D0),
|
||||
LETTER_2 (2, (char) 0x05D1),
|
||||
LETTER_3 (3, (char) 0x05D2),
|
||||
LETTER_4 (4, (char) 0x05D3),
|
||||
LETTER_5 (5, (char) 0x05D4),
|
||||
LETTER_6 (6, (char) 0x05D5),
|
||||
LETTER_7 (7, (char) 0x05D6),
|
||||
LETTER_8 (8, (char) 0x05D7),
|
||||
LETTER_9 (9, (char) 0x05D8),
|
||||
|
||||
LETTER_11 (11, (char) 0x05D9),
|
||||
LETTER_12 (12, (char) 0x05DB),
|
||||
LETTER_13 (13, (char) 0x05DC),
|
||||
LETTER_14 (14, (char) 0x05DE),
|
||||
LETTER_15 (15, (char) 0x05E0),
|
||||
LETTER_16 (16, (char) 0x05E1),
|
||||
LETTER_17 (17, (char) 0x05E2),
|
||||
LETTER_18 (18, (char) 0x05E4),
|
||||
LETTER_19 (19, (char) 0x05E6),
|
||||
|
||||
LETTER_21 (21, (char) 0x05E7),
|
||||
LETTER_22 (22, (char) 0x05E8),
|
||||
LETTER_23 (23, (char) 0x05E9),
|
||||
LETTER_24 (24, (char) 0x05EA),
|
||||
LETTER_25 (25, (char) 0x05DA),
|
||||
LETTER_26 (26, (char) 0x05DD),
|
||||
LETTER_27 (27, (char) 0x05DF),
|
||||
LETTER_28 (28, (char) 0x05E3),
|
||||
LETTER_29 (29, (char) 0x05E5),
|
||||
|
||||
/* // OLD
|
||||
LETTER_11 (10, (char) 0x05D9),
|
||||
LETTER_12 (20, (char) 0x05DB),
|
||||
LETTER_13 (30, (char) 0x05DC),
|
||||
LETTER_14 (40, (char) 0x05DE),
|
||||
LETTER_15 (50, (char) 0x05E0),
|
||||
LETTER_16 (60, (char) 0x05E1),
|
||||
LETTER_17 (70, (char) 0x05E2),
|
||||
LETTER_18 (80, (char) 0x05E4),
|
||||
LETTER_19 (90, (char) 0x05E6),
|
||||
|
||||
LETTER_21 (100, (char) 0x05E7),
|
||||
LETTER_22 (200, (char) 0x05E8),
|
||||
LETTER_23 (300, (char) 0x05E9),
|
||||
LETTER_24 (400, (char) 0x05EA),
|
||||
LETTER_25 (500, (char) 0x05DA),
|
||||
LETTER_26 (600, (char) 0x05DD),
|
||||
LETTER_27 (700, (char) 0x05DF),
|
||||
LETTER_28 (800, (char) 0x05E3),
|
||||
LETTER_29 (900, (char) 0x05E5),
|
||||
*/
|
||||
LETTER_31 (31, (char) 0x05BE),
|
||||
LETTER_32 (32, (char) 0x05C0),
|
||||
LETTER_33 (33, (char) 0x05C3),
|
||||
LETTER_34 (34, (char) 0x05C6),
|
||||
;
|
||||
|
||||
public static final byte BITMASK = 0b00011111;
|
||||
public static final byte SHIFT_5 = 5;
|
||||
private final int decimal;
|
||||
private final char character;
|
||||
|
||||
private static final Map<Character, Gê̄ldGetậlÅtHebrewLetter> CHAR_MAP = Collections.unmodifiableMap(
|
||||
Arrays.asList(values()).stream().collect(Collectors.toMap(v -> v.getCharacter(), v -> v)));
|
||||
|
||||
private Gê̄ldGetậlÅtHebrewLetter(int decimal, char character) {
|
||||
this.decimal = decimal;
|
||||
this.character = character;
|
||||
}
|
||||
|
||||
public int getDecimal() {
|
||||
return decimal;
|
||||
}
|
||||
|
||||
public char getCharacter() {
|
||||
return character;
|
||||
}
|
||||
|
||||
public static Gê̄ldGetậlÅtHebrewLetter indexOf(int index) {
|
||||
return values()[index & BITMASK];
|
||||
}
|
||||
|
||||
public static Gê̄ldGetậlÅtHebrewLetter valueOfCharacter(char codePoint) {
|
||||
return CHAR_MAP.getOrDefault(codePoint, Gê̄ldGetậlÅtHebrewLetter.NONE);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @author willemtsade ©Δ∞ 仙上主天
|
||||
*/
|
||||
public enum Gê̄ldGetậlÅtHebrewVowel {
|
||||
NONE (0, (char) 0x0000),
|
||||
VOWEL_1 (1, (char) 0x05B4),
|
||||
VOWEL_2 (2, (char) 0x05B5),
|
||||
VOWEL_3 (3, (char) 0x05B6),
|
||||
VOWEL_4 (4, (char) 0x05B2),
|
||||
VOWEL_5 (5, (char) 0x05C7),
|
||||
VOWEL_6 (6, (char) 0x05B7), // 06 = PATAH
|
||||
VOWEL_7 (7, (char) 0x05A1),
|
||||
VOWEL_8 (8, (char) 0x05A2),
|
||||
VOWEL_9 (9, (char) 0x05A3),
|
||||
VOWEL_10 (10, (char) 0x05B9), // 10 = POINT HOLAM
|
||||
VOWEL_16 (16, (char) 0x05B8), // 16 = QAMATS
|
||||
VOWEL_22 (22, (char) 0x0598),
|
||||
VOWEL_30 (30, (char) 0x05BB), // 30 = QUBUTS
|
||||
VOWEL_36 (36, (char) 0x05B3), // 36 = HATAF QAMATS
|
||||
VOWEL_42 (42, (char) 0x05B1), // 50 = HATEF SEGOL
|
||||
;
|
||||
|
||||
public static final byte BITMASK = 0b00001111;
|
||||
private final int fractionOffset;
|
||||
private final char character;
|
||||
|
||||
private static final Map<Character, Gê̄ldGetậlÅtHebrewVowel> CHAR_MAP = Collections.unmodifiableMap(
|
||||
Arrays.asList(values()).stream().collect(Collectors.toMap(v -> v.getCharacter(), v -> v)));
|
||||
|
||||
private Gê̄ldGetậlÅtHebrewVowel(int fractionOffset, char character) {
|
||||
this.fractionOffset = fractionOffset;
|
||||
this.character = character;
|
||||
}
|
||||
|
||||
public int getFractionOffset() {
|
||||
return fractionOffset;
|
||||
}
|
||||
|
||||
public char getCharacter() {
|
||||
return character;
|
||||
}
|
||||
|
||||
public static Gê̄ldGetậlÅtHebrewVowel indexOf(int index) {
|
||||
return values()[index & BITMASK];
|
||||
}
|
||||
|
||||
public static Gê̄ldGetậlÅtHebrewVowel valueOfCharacter(char codePoint) {
|
||||
return CHAR_MAP.getOrDefault(codePoint, Gê̄ldGetậlÅtHebrewVowel.NONE);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.numberxd.base2t.typexl.V0x000CA8ˣᴸ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class KlompGetậl4ˢᴰ extends AbstractBaseGetậlLevel0<KlompGetậl4ˢᴰ,V0x000CA8ˣᴸ> {
|
||||
|
||||
private final V0x000CA8ˣᴸ[] values = new V0x000CA8ˣᴸ[T08PartOctal.LENGTH()];
|
||||
|
||||
public KlompGetậl4ˢᴰ() {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V0x000CA8ˣᴸ();
|
||||
}
|
||||
}
|
||||
|
||||
public KlompGetậl4ˢᴰ(BaseIteratorOctal values) {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V0x000CA8ˣᴸ(values);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public V0x000CA8ˣᴸ getValue() {
|
||||
return values[valueIndex0];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex0Length() {
|
||||
return T08PartOctal.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public KlompGetậl4ˢᴰ toClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
cloneStack.addIterator(this.values[i].iteratorOctalsByClone());
|
||||
}
|
||||
return new KlompGetậl4ˢᴰ(cloneStack);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,75 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.typexl.V0x000CA8ˣᴸ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
/**
|
||||
* Array of ŌṁKlompGetậl4ˢᴰ sliced as cheese.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class KlompÅtŌṁKāassGetậl4ˢᴰ extends AbstractBaseGetậlLevel1<KlompÅtŌṁKāassGetậl4ˢᴰ, V0x000CA8ˣᴸ> {
|
||||
|
||||
private final V0x000CA8ˣᴸ[][] kaas;
|
||||
private final int kaasCuts;
|
||||
|
||||
public KlompÅtŌṁKāassGetậl4ˢᴰ(int kaasCuts) {
|
||||
if (kaasCuts < 2) {
|
||||
throw new IllegalArgumentException("Can't slice cheese into less than one peace.");
|
||||
}
|
||||
this.kaasCuts = kaasCuts;
|
||||
this.kaas = new V0x000CA8ˣᴸ[T08PartOctal.LENGTH()][kaasCuts];
|
||||
for (int x=0;x<this.kaas.length;x++) {
|
||||
for (int y=0;y<this.kaas[x].length;y++) {
|
||||
this.kaas[x][y] = new V0x000CA8ˣᴸ();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public KlompÅtŌṁKāassGetậl4ˢᴰ(int kaasCuts, BaseIteratorOctal values) {
|
||||
if (kaasCuts < 2) {
|
||||
throw new IllegalArgumentException("Can't slice cheese into less than one peace.");
|
||||
}
|
||||
this.kaasCuts = kaasCuts;
|
||||
this.kaas = new V0x000CA8ˣᴸ[T08PartOctal.LENGTH()][kaasCuts];
|
||||
for (int x=0;x<this.kaas.length;x++) {
|
||||
for (int y=0;y<this.kaas[x].length;y++) {
|
||||
this.kaas[x][y] = new V0x000CA8ˣᴸ(values);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public int getKaasCuts() {
|
||||
return kaasCuts;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V0x000CA8ˣᴸ getValue() {
|
||||
return kaas[valueIndex0][valueIndex1];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex0Length() {
|
||||
return T08PartOctal.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex1Length() {
|
||||
return kaasCuts;
|
||||
}
|
||||
|
||||
@Override
|
||||
public KlompÅtŌṁKāassGetậl4ˢᴰ toClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int x=0;x<getValueIndex0Length();x++) {
|
||||
setValueIndex0(x);
|
||||
for (int y=0;y<getValueIndex1Length();y++) {
|
||||
setValueIndex1(y);
|
||||
cloneStack.addIterator(getValue().iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
return new KlompÅtŌṁKāassGetậl4ˢᴰ(getKaasCuts(), cloneStack);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T04PartQuad;
|
||||
import love.distributedrebirth.numberxd.base2t.typexl.V0x049D40ˣᴸ;
|
||||
|
||||
/**
|
||||
* Wave quad channel.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class WaveGetậl1ᑫᴰ extends AbstractBaseGetậlLevel0<WaveGetậl1ᑫᴰ, V0x049D40ˣᴸ> {
|
||||
|
||||
private final V0x049D40ˣᴸ[] values = new V0x049D40ˣᴸ[T04PartQuad.LENGTH()];
|
||||
|
||||
public WaveGetậl1ᑫᴰ() {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V0x049D40ˣᴸ();
|
||||
}
|
||||
}
|
||||
|
||||
public WaveGetậl1ᑫᴰ(BaseIteratorOctal values) {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V0x049D40ˣᴸ(values);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public V0x049D40ˣᴸ getValue() {
|
||||
return values[valueIndex0];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getValueIndex0Length() {
|
||||
return T04PartQuad.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public WaveGetậl1ᑫᴰ toClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
cloneStack.addIterator(this.values[i].iteratorOctalsByClone());
|
||||
}
|
||||
return new WaveGetậl1ᑫᴰ(cloneStack);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.typexl.V0x049D40ˣᴸ;
|
||||
|
||||
/**
|
||||
* Wave mono channel.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class WaveGetậl1ⁿᴰ implements BaseGetậl<WaveGetậl1ⁿᴰ, V0x049D40ˣᴸ> {
|
||||
|
||||
private final V0x049D40ˣᴸ value;
|
||||
|
||||
public WaveGetậl1ⁿᴰ() {
|
||||
value = new V0x049D40ˣᴸ();
|
||||
}
|
||||
|
||||
public WaveGetậl1ⁿᴰ(BaseIteratorOctal values) {
|
||||
value = new V0x049D40ˣᴸ(values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public V0x049D40ˣᴸ getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WaveGetậl1ⁿᴰ toClone() {
|
||||
return new WaveGetậl1ⁿᴰ(getValue().iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
package love.distributedrebirth.numberxd.alu;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class ŌctopǔsALU {
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
package love.distributedrebirth.numberxd.alu;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public enum ŌctopǔsBreukOpểrǟtiẻ {
|
||||
|
||||
OP_TEL,
|
||||
AF_TREK
|
||||
}
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
package love.distributedrebirth.numberxd.alu;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public enum ŌctopǔsSnijOpểrǟtiẻ {
|
||||
|
||||
OP_TEL,
|
||||
AF_TREK
|
||||
}
|
||||
|
|
@ -0,0 +1,110 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.OutputStream;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnEnumInstanceʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V072Tong;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
||||
|
||||
/**
|
||||
* Terminate from and to classical bytes.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public enum Base2Terminator implements BãßBȍőnEnumInstanceʸᴰ<Base2Terminator> {
|
||||
|
||||
INSTANCE;
|
||||
|
||||
private static final int STREAM_EOF = -1;
|
||||
private static final int BLOCK_TONG_SIZE = 9;
|
||||
private static final int BLOCK_TOCTA_SIZE = 18;
|
||||
private static final int SHIFT_8 = 8;
|
||||
private static final int SHIFT_16 = 16;
|
||||
|
||||
public int Bãß2ReadTong(InputStream input, List<V072Tong> output) throws IOException {
|
||||
int totalBytes = 0;
|
||||
byte[] data = new byte[BLOCK_TONG_SIZE];
|
||||
int readDataSize = 0; // per 9 bytes we have 24 octals for one V072Tong number
|
||||
while ((readDataSize = input.read(data, 0, data.length)) != STREAM_EOF) {
|
||||
Bãß2ReadCheckSize(readDataSize, BLOCK_TONG_SIZE);
|
||||
int v0 = data[0] + (data[1] << SHIFT_8) + (data[2] << SHIFT_16);
|
||||
int v1 = data[3] + (data[4] << SHIFT_8) + (data[5] << SHIFT_16);
|
||||
int v2 = data[6] + (data[7] << SHIFT_8) + (data[8] << SHIFT_16);
|
||||
List<T08PartOctal> octals = Bãß2ReadOctals(v0, v1, v2);
|
||||
output.add(new V072Tong(new BaseIteratorOctalAdapter(octals.iterator())));
|
||||
totalBytes += BLOCK_TONG_SIZE;
|
||||
}
|
||||
return totalBytes;
|
||||
}
|
||||
|
||||
public int Bãß2ReadTocta(InputStream input, List<V144Tocta> output) throws IOException {
|
||||
int totalBytes = 0;
|
||||
byte[] data = new byte[BLOCK_TOCTA_SIZE];
|
||||
int readDataSize = 0; // per 18 bytes we have 48 octals for one V144Tocta number
|
||||
while ((readDataSize = input.read(data, 0, data.length)) != STREAM_EOF) {
|
||||
Bãß2ReadCheckSize(readDataSize, BLOCK_TOCTA_SIZE);
|
||||
int v0 = data[0] + (data[1] << SHIFT_8) + (data[2] << SHIFT_16);
|
||||
int v1 = data[3] + (data[4] << SHIFT_8) + (data[5] << SHIFT_16);
|
||||
int v2 = data[6] + (data[7] << SHIFT_8) + (data[8] << SHIFT_16);
|
||||
int v3 = data[9] + (data[10] << SHIFT_8) + (data[11] << SHIFT_16);
|
||||
int v4 = data[12] + (data[13] << SHIFT_8) + (data[14] << SHIFT_16);
|
||||
int v5 = data[15] + (data[16] << SHIFT_8) + (data[17] << SHIFT_16);
|
||||
List<T08PartOctal> octals = Bãß2ReadOctals(v0, v1, v2, v3, v4, v5);
|
||||
output.add(new V144Tocta(new BaseIteratorOctalAdapter(octals.iterator())));
|
||||
totalBytes += BLOCK_TOCTA_SIZE;
|
||||
}
|
||||
return totalBytes;
|
||||
}
|
||||
|
||||
private void Bãß2ReadCheckSize(int readDataSize, int expectedSize) throws IOException {
|
||||
if (readDataSize < expectedSize) {
|
||||
throw new IOException("Expected "+expectedSize+" bytes, got: "+readDataSize);
|
||||
}
|
||||
}
|
||||
|
||||
private List<T08PartOctal> Bãß2ReadOctals(int...values) {
|
||||
List<T08PartOctal> octals = new ArrayList<>();
|
||||
for (int value:values) {
|
||||
T08PartOctal.PART_1.BãßVoorElk(v -> octals.add(T08PartOctal.indexOf(v, value)));
|
||||
}
|
||||
return octals;
|
||||
}
|
||||
|
||||
public int Bãß2WriteTong(List<V072Tong> data, OutputStream output) throws IOException {
|
||||
return Bãß2Write(data, output);
|
||||
}
|
||||
|
||||
public int Bãß2WriteTocta(List<V144Tocta> data, OutputStream output) throws IOException {
|
||||
return Bãß2Write(data, output);
|
||||
}
|
||||
|
||||
private <T extends BaseNumber<T>> int Bãß2Write(List<T> data, OutputStream output) throws IOException {
|
||||
int totalBytes = 0; // per 8 octa's is 3 bytes
|
||||
List<T08PartOctal> octals = new ArrayList<>();
|
||||
BaseAppenderOctal appender = new BaseAppenderOctal(octals);
|
||||
data.forEach(v -> v.fillOctalsByClone(appender));
|
||||
Iterator<T08PartOctal> read = octals.iterator();
|
||||
while (read.hasNext()) {
|
||||
int byteTriplet = 0;
|
||||
byteTriplet += read.next().ordinalOf(T08PartOctal.PART_1);
|
||||
byteTriplet += read.next().ordinalOf(T08PartOctal.PART_2);
|
||||
byteTriplet += read.next().ordinalOf(T08PartOctal.PART_3);
|
||||
byteTriplet += read.next().ordinalOf(T08PartOctal.PART_4);
|
||||
byteTriplet += read.next().ordinalOf(T08PartOctal.PART_5);
|
||||
byteTriplet += read.next().ordinalOf(T08PartOctal.PART_6);
|
||||
byteTriplet += read.next().ordinalOf(T08PartOctal.PART_7);
|
||||
byteTriplet += read.next().ordinalOf(T08PartOctal.PART_8);
|
||||
output.write(byteTriplet);
|
||||
output.write(byteTriplet >> SHIFT_8);
|
||||
output.write(byteTriplet >> SHIFT_16);
|
||||
totalBytes += 3;
|
||||
}
|
||||
return totalBytes;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,9 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BaseAppender<T> {
|
||||
|
||||
void add(T value);
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
/**
|
||||
* Appender model for Octals.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class BaseAppenderOctal implements BaseAppender<T08PartOctal> {
|
||||
|
||||
private final Collection<T08PartOctal> collection;
|
||||
|
||||
public BaseAppenderOctal(Collection<T08PartOctal> collection) {
|
||||
this.collection = collection;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void add(T08PartOctal value) {
|
||||
collection.add(value);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||
|
||||
/**
|
||||
* Appender model for Tytes.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class BaseAppenderTyte implements BaseAppender<V009Tyte> {
|
||||
|
||||
private final Collection<V009Tyte> collection;
|
||||
|
||||
public BaseAppenderTyte(Collection<V009Tyte> collection) {
|
||||
this.collection = collection;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void add(V009Tyte value) {
|
||||
collection.add(value);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import java.util.Iterator;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
/**
|
||||
* Iterator model for Octals.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BaseIteratorOctal extends Iterator<T08PartOctal> {
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import java.util.Iterator;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
/**
|
||||
* Iterator model for Octals.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class BaseIteratorOctalAdapter implements BaseIteratorOctal {
|
||||
|
||||
private final Iterator<T08PartOctal> iterator;
|
||||
|
||||
public BaseIteratorOctalAdapter(Iterator<T08PartOctal> iterator) {
|
||||
this.iterator = iterator;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasNext() {
|
||||
return iterator.hasNext();
|
||||
}
|
||||
|
||||
@Override
|
||||
public T08PartOctal next() {
|
||||
return iterator.next();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import java.util.Stack;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
/**
|
||||
* Stack model for octal iterators.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class BaseIteratorOctalStack implements BaseIteratorOctal {
|
||||
|
||||
private final Stack<BaseIteratorOctal> stack = new Stack<>();
|
||||
|
||||
public BaseIteratorOctalStack() {
|
||||
}
|
||||
|
||||
public void addIterator(BaseIteratorOctal iterator) {
|
||||
stack.push(iterator);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasNext() {
|
||||
if (stack.isEmpty()) {
|
||||
return false;
|
||||
}
|
||||
if (stack.peek().hasNext()) {
|
||||
return true;
|
||||
}
|
||||
stack.pop();
|
||||
if (stack.isEmpty()) {
|
||||
return false;
|
||||
}
|
||||
return stack.peek().hasNext();
|
||||
}
|
||||
|
||||
@Override
|
||||
public T08PartOctal next() {
|
||||
if (stack.isEmpty()) {
|
||||
throw new IllegalStateException("Stack is empty.");
|
||||
}
|
||||
return stack.peek().next();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import java.util.Iterator;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||
|
||||
/**
|
||||
* Iterator model for Tytes.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class BaseIteratorTyte implements Iterator<V009Tyte> {
|
||||
|
||||
private final Iterator<V009Tyte> iterator;
|
||||
|
||||
public BaseIteratorTyte(Iterator<V009Tyte> iterator) {
|
||||
this.iterator = iterator;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasNext() {
|
||||
return iterator.hasNext();
|
||||
}
|
||||
|
||||
@Override
|
||||
public V009Tyte next() {
|
||||
return iterator.next();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
/**
|
||||
* Octal base based number interface.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BaseNumber<V extends BaseNumber<V>> {
|
||||
|
||||
static float CIRCLE_DEGREE = 360f;
|
||||
|
||||
int getBitCount();
|
||||
|
||||
default float getSliceAngle() {
|
||||
return CIRCLE_DEGREE/getBitCount();
|
||||
}
|
||||
|
||||
V toClone();
|
||||
|
||||
void fillOctalsByClone(BaseAppenderOctal appender);
|
||||
|
||||
default BaseIteratorOctal iteratorOctalsByClone() {
|
||||
List<T08PartOctal> octals = new ArrayList<>();
|
||||
fillOctalsByClone(new BaseAppenderOctal(octals));
|
||||
return new BaseIteratorOctalAdapter(octals.iterator());
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||
|
||||
/**
|
||||
* Adds Tyte fill and reference support.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BaseNumberTyte<V extends BaseNumber<V>> extends BaseNumber<V> {
|
||||
|
||||
void fillTytesByReference(BaseAppenderTyte appender);
|
||||
|
||||
default BaseIteratorTyte iteratorTytesByReference() {
|
||||
List<V009Tyte> tytes = new ArrayList<>();
|
||||
fillTytesByReference(new BaseAppenderTyte(tytes));
|
||||
return new BaseIteratorTyte(tytes.iterator());
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
/**
|
||||
* Propogate baseXL interface upwards.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BaseNumberTyteXL<V extends BaseNumber<V>> extends BaseNumberXL<V>,BaseNumberTyte<V> {
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
/**
|
||||
* Marker for XL numbers which needs seperator renderer.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BaseNumberXL<V extends BaseNumber<V>> extends BaseNumber<V> {
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,67 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnEnumInstanceʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T02PartBinary;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T03PartTrit;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T04PartQuad;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T05PartPental;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T06PartSeximal;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T07PartPlanIt;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T10PartDecimal;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T11PartUndecimal;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T12PartUncial;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T20PartScore;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T60PartSexagesimal;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "BasePartFactory", purpose = "Factory to access the bases.")
|
||||
public enum BasePartFactory implements BãßBȍőnEnumInstanceʸᴰ<BasePartFactory> {
|
||||
|
||||
INSTANCE;
|
||||
|
||||
private static final int[] SUPPORTED_BASES = {2,3,4,5,6,7,8,10,11,12,16,20,60};
|
||||
|
||||
public int[] BãßBases() {
|
||||
return SUPPORTED_BASES;
|
||||
}
|
||||
|
||||
public BãßBȍőnPartʸᴰ<?>[] BãßBuildPartsByBase(int base) {
|
||||
switch (base) {
|
||||
case 2:
|
||||
return T02PartBinary.values();
|
||||
case 3:
|
||||
return T03PartTrit.values();
|
||||
case 4:
|
||||
return T04PartQuad.values();
|
||||
case 5:
|
||||
return T05PartPental.values();
|
||||
case 6:
|
||||
return T06PartSeximal.values();
|
||||
case 7:
|
||||
return T07PartPlanIt.values();
|
||||
case 8:
|
||||
return T08PartOctal.values();
|
||||
case 9:
|
||||
throw new IllegalArgumentException("Unsupported base: "+base);
|
||||
case 10:
|
||||
return T10PartDecimal.values();
|
||||
case 11:
|
||||
return T11PartUndecimal.values();
|
||||
case 12:
|
||||
return T12PartUncial.values();
|
||||
case 16:
|
||||
return T16PartHex.values();
|
||||
case 20:
|
||||
return T20PartScore.values();
|
||||
case 60:
|
||||
return T60PartSexagesimal.values();
|
||||
default:
|
||||
throw new IllegalArgumentException("Unsupported base: "+base);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,88 @@
|
|||
package love.distributedrebirth.numberxd.base2t.glyph;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T10PartDecimal;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "BaseGlyphSet", purpose = "The encoded base scripts.")
|
||||
public enum BaseGlyphSet implements BãßBȍőnGlyphSetʸᴰ<BaseGlyphSet> {
|
||||
|
||||
// TODO: ImGui add font for SINHALA
|
||||
// TODO: ImGui add font for TONE_LETTER missing plane 1,2,3
|
||||
// TODO: ImGui add font for BURMESE
|
||||
// TODO: ImGui add font for ARABIC
|
||||
|
||||
LATIN_DTMF(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnChinaValue()))).withSeperator(" "),
|
||||
new BaseGlyphSetNumber("1","2","3","A","4","5","6","B","7","8","9","C","*","0","#","D"),
|
||||
null),
|
||||
LATIN_BASIC(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(Integer.toString(x.BȍőnRangTelNul())))),
|
||||
new BaseGlyphSetNumber(v -> T16PartHex.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt1Value()))),
|
||||
new BaseGlyphSetNumber("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_TOP16(new BaseGlyphSetNumber("⁰","¹","²","³","⁴","⁵","⁶","⁷","⁸","⁹"),
|
||||
new BaseGlyphSetNumber("⁰","¹","²","³","⁴","⁵","⁶","⁷","⁸","⁹","ᵃ","ᵇ","ᶜ","ᵈ","ᵉ","ᶠ"),
|
||||
new BaseGlyphSetNumber("¹","²","³","⁴","⁵","⁶","⁷","⁸","⁹","ᵃ","ᵇ","ᶜ","ᵈ","ᵉ","ᶠ","ᴳ","ᴴ","ᴵ","ᴶ","ᴷ","ᴸ","ᴹ","ᴺ","ᴼ","ᴾ","Q","ᴿ")),
|
||||
LATIN_SUB16(new BaseGlyphSetNumber("₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"),
|
||||
new BaseGlyphSetNumber("₀","₁","₂","₃","₄","₅","₆","₇","₈","₉","ₐ","₆","꜀","ₔ","ₑ","բ"),
|
||||
new BaseGlyphSetNumber("₁","₂","₃","₄","₅","₆","₇","₈","₉","ₐ","₆","꜀","ₔ","ₑ","բ","G","ₕ","ᵢ","ⱼ","ₖ","ₗ","ₘ","ₙ","ₒ","ₚ","Q","ᵣ")),
|
||||
TONE_LETTER(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnIdentifierTone()))),
|
||||
new BaseGlyphSetNumber(v -> T16PartHex.PART_1.BãßVoorElk(x -> v.add(x.BȍőnIdentifierTone()))),
|
||||
new BaseGlyphSetNumber("꜊꜈","꜊꜉","꜊꜋","꜊꜌","꜊꜍","꜊꜎","꜊꜏","꜊꜐","꜊꜑","˧˥","˧˦","˧˨","˧˩","˧꜒","˧꜓","˧꜔","˧꜕","˧꜖","꜏˥","꜏˦","꜏˧","꜏˨","꜏˩","꜏꜍","꜏꜎","꜏꜐","꜏꜑")),
|
||||
|
||||
DIPAVALI_TONE_LR_TOP16(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt1Value()))),
|
||||
new BaseGlyphSetNumber("˧˥˩","˧˩˥","˧˥˦","˧˩˨","˧˦˦","˧˨˨","˧˥˥","˧˩˩","˥˩˧","˩˥˧","˥˦˧","˩˨˧","˦˦˧","˨˨˧","˥˥˧","˩˩˧").withAltGlyphSet(BaseGlyphSet.LATIN_TOP16),
|
||||
null),
|
||||
DIPAVALI_TONE_LR_SUB16(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt1Value()))),
|
||||
new BaseGlyphSetNumber("˧˥˩","˧˩˥","˧˥˦","˧˩˨","˧˦˦","˧˨˨","˧˥˥","˧˩˩","˥˩˧","˩˥˧","˥˦˧","˩˨˧","˦˦˧","˨˨˧","˥˥˧","˩˩˧").withAltGlyphSet(BaseGlyphSet.LATIN_SUB16),
|
||||
null),
|
||||
DIPAVALI_TONE_RL_TOP16(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt2Value()))),
|
||||
new BaseGlyphSetNumber("꜔꜒꜖","꜔꜖꜒","꜔꜒꜓","꜔꜖꜕","꜔꜓꜓","꜔꜕꜕","꜔꜒꜒","꜔꜖꜖","꜒꜖꜔","꜖꜒꜔","꜒꜓꜔","꜖꜕꜔","꜓꜓꜔","꜕꜕꜔","꜒꜒꜔","꜖꜖꜔").withAltGlyphSet(BaseGlyphSet.LATIN_TOP16),
|
||||
null),
|
||||
DIPAVALI_TONE_RL_SUB16(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt2Value()))),
|
||||
new BaseGlyphSetNumber("꜔꜒꜖","꜔꜖꜒","꜔꜒꜓","꜔꜖꜕","꜔꜓꜓","꜔꜕꜕","꜔꜒꜒","꜔꜖꜖","꜒꜖꜔","꜖꜒꜔","꜒꜓꜔","꜖꜕꜔","꜓꜓꜔","꜕꜕꜔","꜒꜒꜔","꜖꜖꜔").withAltGlyphSet(BaseGlyphSet.LATIN_SUB16),
|
||||
null),
|
||||
|
||||
BURMESE(new BaseGlyphSetNumber("\u1040","\u1041","\u1042","\u1043","\u1044","\u1045","\u1046","\u1047","\u1048","\u1049")),
|
||||
BENGALI(new BaseGlyphSetNumber("০","১","২","৩","৪","৫","৬","৭","৮","৯")),
|
||||
SINHALA(new BaseGlyphSetNumber("෦","෧","෨","෩","෪","෫","෬","෭","෮","෯")),
|
||||
CHINA_FINANCIAL_T(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnChinaKey()))),
|
||||
new BaseGlyphSetNumber(v -> T16PartHex.PART_1.BãßVoorElk(x -> v.add(x.BȍőnChinaKey()))).withAltGlyphSet(BaseGlyphSet.LATIN_TOP16),
|
||||
null),
|
||||
CHINA_FINANCIAL_S(new BaseGlyphSetNumber("零","壹","贰","叁","肆","伍","陆","柒","捌","玖")),
|
||||
CHINA_NORMAL_T(new BaseGlyphSetNumber("零","一","二","三","四","五","六","七","八","九")),
|
||||
CHINA_NORMAL_S(new BaseGlyphSetNumber("〇","一","二","三","四","五","六","七","八","九")),
|
||||
|
||||
GREEK(new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ"),
|
||||
new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ").withAltGlyphSet(BaseGlyphSet.LATIN_TOP16),
|
||||
new BaseGlyphSetNumber("α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ","ο","π","ϟ","ρ","σ","τ","υ","φ","χ","ψ","ω","ϡ")),
|
||||
|
||||
KOREAN(new BaseGlyphSetNumber("영","일","이","삼","사","오","육","칠","팔","구"),
|
||||
new BaseGlyphSetNumber("ㅏ","ㅐ","ㅑ","ㅒ","ㅓ","ㅔ","ㅕ","ㅖ","ㅗ","ㅘ","ㅙ","ㅚ","ㅛ","ㅜ","ㅝ","ㅞ").withAltGlyphSet(BaseGlyphSet.LATIN_TOP16),
|
||||
new BaseGlyphSetNumber("ㄱ","ㄲ","ㄴ","ㄷ","ㄸ","ㄹ","ㅁ","ㅂ","ㅃ","ㅅ","ㅆ","ㅈ","ㅉ","ㅊ","ㅋ","ㅌ","ㅍ","ㅎ","ㄵ","ㄶ","ㄺ","ㄻ","ㄼ","ㄽ","ㄾ","ㄿ","ㅀ")),
|
||||
|
||||
ARABIC(new BaseGlyphSetNumber("٠","١","٢","٣","٤","٥","٦","٧","٨","٩"),
|
||||
new BaseGlyphSetNumber("٠","١","٢","٣","٤","٥","٦","٧","٨","٩","ا","ب","ج","د","ه","و").withAltGlyphSet(BaseGlyphSet.LATIN_TOP16),
|
||||
new BaseGlyphSetNumber("ا","ب","ج","د","ه","و","ز","ح","ط","ي","ك","ل","م","ن","س","ع","ف","ص","ق","ر","ش","ت","ث","خ","ذ","ض","ظ")),
|
||||
|
||||
HEBREW(new BaseGlyphSetNumber("אֶפֶס","אֶחָד","שְׁתַּיִם","שְׁלֹשָׁה","אַרְבַּע","חֲמִשָּׁה","שֵׁשׁ","שִׁבְעָה","שְׁמוֹנֶה","תִּשְׁעָה").withSeperator(" "),
|
||||
new BaseGlyphSetNumber("אֶפֶס","אֶחָד","שְׁתַּיִם","שְׁלֹשָׁה","אַרְבַּע","חֲמִשָּׁה","שֵׁשׁ","שִׁבְעָה","שְׁמוֹנֶה","תִּשְׁעָה","א","ב","ג","ד","ה","ו").withAltGlyphSet(BaseGlyphSet.LATIN_TOP16),
|
||||
new BaseGlyphSetNumber("א","ב","ג","ד","ה","ו","ז","ח","ט","י","כ","ל","מ","נ","ס ","ע","פ","צ","ק","ר","ש","ת","ך","ם","ן","ף","ץ")),
|
||||
;
|
||||
|
||||
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 static int LENGTH() { return values().length; };
|
||||
|
||||
private BaseGlyphSet(BaseGlyphSetNumber numbers) {
|
||||
this(numbers, null, null);
|
||||
}
|
||||
|
||||
private BaseGlyphSet(BaseGlyphSetNumber numbers, BaseGlyphSetNumber hex, BaseGlyphSetNumber gematria) {
|
||||
BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, numbers);
|
||||
BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.HEXIMALS, hex);
|
||||
BBC.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.GEMATRIA, gematria);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,179 @@
|
|||
package love.distributedrebirth.numberxd.base2t.glyph;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppender;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class BaseGlyphSetNumber {
|
||||
|
||||
private final List<String> chars = new ArrayList<>();
|
||||
private BaseGlyphSet altGlyphSet = null;
|
||||
private String charSeperator = "";
|
||||
|
||||
public BaseGlyphSetNumber(String char0, String char1, String char2, String char3, String char4, String char5,
|
||||
String char6, String char7, String char8, String char9) {
|
||||
this.chars.add(char0);
|
||||
this.chars.add(char1);
|
||||
this.chars.add(char2);
|
||||
this.chars.add(char3);
|
||||
this.chars.add(char4);
|
||||
this.chars.add(char5);
|
||||
this.chars.add(char6);
|
||||
this.chars.add(char7);
|
||||
this.chars.add(char8);
|
||||
this.chars.add(char9);
|
||||
}
|
||||
|
||||
public BaseGlyphSetNumber(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 charD, String charE, String charF) {
|
||||
this.chars.add(char0);
|
||||
this.chars.add(char1);
|
||||
this.chars.add(char2);
|
||||
this.chars.add(char3);
|
||||
this.chars.add(char4);
|
||||
this.chars.add(char5);
|
||||
this.chars.add(char6);
|
||||
this.chars.add(char7);
|
||||
this.chars.add(char8);
|
||||
this.chars.add(char9);
|
||||
this.chars.add(charA);
|
||||
this.chars.add(charB);
|
||||
this.chars.add(charC);
|
||||
this.chars.add(charD);
|
||||
this.chars.add(charE);
|
||||
this.chars.add(charF);
|
||||
}
|
||||
|
||||
public BaseGlyphSetNumber(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 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 char900) {
|
||||
this.chars.add(char1);
|
||||
this.chars.add(char2);
|
||||
this.chars.add(char3);
|
||||
this.chars.add(char4);
|
||||
this.chars.add(char5);
|
||||
this.chars.add(char6);
|
||||
this.chars.add(char7);
|
||||
this.chars.add(char8);
|
||||
this.chars.add(char9);
|
||||
this.chars.add(char10);
|
||||
this.chars.add(char20);
|
||||
this.chars.add(char30);
|
||||
this.chars.add(char40);
|
||||
this.chars.add(char50);
|
||||
this.chars.add(char60);
|
||||
this.chars.add(char70);
|
||||
this.chars.add(char80);
|
||||
this.chars.add(char90);
|
||||
this.chars.add(char100);
|
||||
this.chars.add(char200);
|
||||
this.chars.add(char300);
|
||||
this.chars.add(char400);
|
||||
this.chars.add(char500);
|
||||
this.chars.add(char600);
|
||||
this.chars.add(char700);
|
||||
this.chars.add(char800);
|
||||
this.chars.add(char900);
|
||||
}
|
||||
|
||||
public BaseGlyphSetNumber(Consumer<BaseAppender<String>> consumer) {
|
||||
consumer.accept(new BaseAppender<String>() {
|
||||
|
||||
@Override
|
||||
public void add(String value) {
|
||||
chars.add(value);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public BaseGlyphSetNumber withAltGlyphSet(BaseGlyphSet altGlyphSet) {
|
||||
this.altGlyphSet = altGlyphSet;
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
public BaseGlyphSetNumber withSeperator(String charSeperator) {
|
||||
this.charSeperator = charSeperator;
|
||||
return this;
|
||||
}
|
||||
|
||||
public String BȍőnCharFor(int number) {
|
||||
return chars.get(number);
|
||||
}
|
||||
|
||||
public String BȍőnCharSeperator() {
|
||||
return charSeperator;
|
||||
}
|
||||
|
||||
public BaseGlyphSet BȍőnAltGlyphSet() {
|
||||
return altGlyphSet;
|
||||
}
|
||||
|
||||
public String BȍőnCharFor36(int number) {
|
||||
switch (number) {
|
||||
case 1:
|
||||
return chars.get(0);
|
||||
case 2:
|
||||
return chars.get(1);
|
||||
case 3:
|
||||
return chars.get(2);
|
||||
case 4:
|
||||
return chars.get(3);
|
||||
case 5:
|
||||
return chars.get(4);
|
||||
case 6:
|
||||
return chars.get(5);
|
||||
case 7:
|
||||
return chars.get(6);
|
||||
case 8:
|
||||
return chars.get(7);
|
||||
case 9:
|
||||
return chars.get(8);
|
||||
case 10:
|
||||
return chars.get(9);
|
||||
case 20:
|
||||
return chars.get(10);
|
||||
case 30:
|
||||
return chars.get(11);
|
||||
case 40:
|
||||
return chars.get(12);
|
||||
case 50:
|
||||
return chars.get(13);
|
||||
case 60:
|
||||
return chars.get(14);
|
||||
case 70:
|
||||
return chars.get(15);
|
||||
case 80:
|
||||
return chars.get(16);
|
||||
case 90:
|
||||
return chars.get(17);
|
||||
case 100:
|
||||
return chars.get(18);
|
||||
case 200:
|
||||
return chars.get(19);
|
||||
case 300:
|
||||
return chars.get(20);
|
||||
case 400:
|
||||
return chars.get(21);
|
||||
case 500:
|
||||
return chars.get(22);
|
||||
case 600:
|
||||
return chars.get(23);
|
||||
case 700:
|
||||
return chars.get(24);
|
||||
case 800:
|
||||
return chars.get(25);
|
||||
case 900:
|
||||
return chars.get(26);
|
||||
default:
|
||||
throw new IllegalArgumentException("Can't handle higher numbers: "+number);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
package love.distributedrebirth.numberxd.base2t.glyph;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreKeyʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public enum BãßBȍőnGlyphSetKeyʸᴰ implements BãßBȍőnCoffinStoreKeyʸᴰ {
|
||||
|
||||
NUMBERS,
|
||||
GEMATRIA,
|
||||
HEXIMALS,
|
||||
;
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
package love.distributedrebirth.numberxd.base2t.glyph;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnEnumSetʸᴰ;
|
||||
|
||||
@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ʸᴰ> {
|
||||
|
||||
default BaseGlyphSetNumber BȍőnGlyphSetNumber10() {
|
||||
return GET_BBC().GET_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, BaseGlyphSetNumber.class);
|
||||
}
|
||||
|
||||
default BaseGlyphSetNumber BȍőnGlyphSetNumber16() {
|
||||
return GET_BBC().GET_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.HEXIMALS, BaseGlyphSetNumber.class);
|
||||
}
|
||||
|
||||
default BaseGlyphSetNumber BȍőnGlyphSetNumber36() {
|
||||
return GET_BBC().GET_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.GEMATRIA, BaseGlyphSetNumber.class);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
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ȍőnPartAlt1Infoʸᴰ {
|
||||
|
||||
String name();
|
||||
|
||||
String website();
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAnnotationInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnAnnotationInfoʸᴰ(required = {BãßBȍőnPartAlt1Infoʸᴰ.class})
|
||||
public interface BãßBȍőnPartAlt1ʸᴰ<T extends BãßBȍőnPartʸᴰ<T>> extends BãßBȍőnPartʸᴰ<T> {
|
||||
|
||||
default String BȍőnAlt1Value() {
|
||||
return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.ALT_1_VALUE);
|
||||
}
|
||||
|
||||
default String BãßAlt1Name() {
|
||||
return getClass().getAnnotation(BãßBȍőnPartAlt1Infoʸᴰ.class).name();
|
||||
}
|
||||
|
||||
default String BãßAlt1Website() {
|
||||
return getClass().getAnnotation(BãßBȍőnPartAlt1Infoʸᴰ.class).website();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
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ȍőnPartAlt2Infoʸᴰ {
|
||||
|
||||
String name();
|
||||
|
||||
String website();
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAnnotationInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnAnnotationInfoʸᴰ(required = {BãßBȍőnPartAlt2Infoʸᴰ.class})
|
||||
public interface BãßBȍőnPartAlt2ʸᴰ<T extends BãßBȍőnPartʸᴰ<T>> extends BãßBȍőnPartAlt1ʸᴰ<T> {
|
||||
|
||||
default String BȍőnAlt2Value() {
|
||||
return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.ALT_2_VALUE);
|
||||
}
|
||||
|
||||
default String BãßAlt2Name() {
|
||||
return getClass().getAnnotation(BãßBȍőnPartAlt2Infoʸᴰ.class).name();
|
||||
}
|
||||
|
||||
default String BãßAlt2Website() {
|
||||
return getClass().getAnnotation(BãßBȍőnPartAlt2Infoʸᴰ.class).website();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
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ȍőnPartAlt3Infoʸᴰ {
|
||||
|
||||
String name();
|
||||
|
||||
String website();
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAnnotationInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnAnnotationInfoʸᴰ(required = {BãßBȍőnPartAlt3Infoʸᴰ.class})
|
||||
public interface BãßBȍőnPartAlt3ʸᴰ<T extends BãßBȍőnPartʸᴰ<T>> extends BãßBȍőnPartAlt2ʸᴰ<T> {
|
||||
|
||||
default String BȍőnAlt3Value() {
|
||||
return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.ALT_3_VALUE);
|
||||
}
|
||||
|
||||
default String BãßAlt3Name() {
|
||||
return getClass().getAnnotation(BãßBȍőnPartAlt3Infoʸᴰ.class).name();
|
||||
}
|
||||
|
||||
default String BãßAlt3Website() {
|
||||
return getClass().getAnnotation(BãßBȍőnPartAlt3Infoʸᴰ.class).website();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
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ȍőnPartAlt4Infoʸᴰ {
|
||||
|
||||
String name();
|
||||
|
||||
String website();
|
||||
}
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAnnotationInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnAnnotationInfoʸᴰ(required = {BãßBȍőnPartAlt4Infoʸᴰ.class})
|
||||
public interface BãßBȍőnPartAlt4ʸᴰ<T extends BãßBȍőnPartʸᴰ<T>> extends BãßBȍőnPartAlt3ʸᴰ<T> {
|
||||
|
||||
default String BȍőnAlt4Value() {
|
||||
return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.ALT_4_VALUE);
|
||||
}
|
||||
|
||||
default String BãßAlt4Name() {
|
||||
return getClass().getAnnotation(BãßBȍőnPartAlt4Infoʸᴰ.class).name();
|
||||
}
|
||||
|
||||
default String BãßAlt4Website() {
|
||||
return getClass().getAnnotation(BãßBȍőnPartAlt4Infoʸᴰ.class).website();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreKeyʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public enum BãßBȍőnPartKeyʸᴰ implements BãßBȍőnCoffinStoreKeyʸᴰ {
|
||||
|
||||
ID_TONE,
|
||||
CHINA_KEY,
|
||||
CHINA_VALUE,
|
||||
SHIFT_BITS,
|
||||
|
||||
MAP_TONE,
|
||||
MAP_CHINA,
|
||||
|
||||
ALT_1_VALUE,
|
||||
ALT_2_VALUE,
|
||||
ALT_3_VALUE,
|
||||
ALT_4_VALUE,
|
||||
;
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BãßBȍőnPartShiftBitsʸᴰ<T extends BãßBȍőnPartʸᴰ<T>> extends BãßBȍőnPartʸᴰ<T> {
|
||||
|
||||
default Integer getShiftBits() {
|
||||
return GET_BBC().GET_INT(BãßBȍőnPartKeyʸᴰ.SHIFT_BITS);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,137 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnEnumSetʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.glyph.BaseGlyphSet;
|
||||
|
||||
@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ʸᴰ> {
|
||||
|
||||
default String BȍőnIdentifierTone() {
|
||||
return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.ID_TONE);
|
||||
}
|
||||
|
||||
default String BȍőnChinaKey() {
|
||||
return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.CHINA_KEY);
|
||||
}
|
||||
|
||||
default String BȍőnChinaValue() {
|
||||
return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE);
|
||||
}
|
||||
|
||||
default String BȍőnGlyphSetNumber10(BaseGlyphSet glyphSet) {
|
||||
StringBuilder buf = new StringBuilder();
|
||||
T[] values = BãßInstances();
|
||||
if (values.length <= 10) {
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber10().BȍőnCharFor(BȍőnRangTelNul()));
|
||||
} else if (values.length <= 100) {
|
||||
int count = BȍőnRangTelNul();
|
||||
int mod10 = count % 10;
|
||||
int div10 = count / 10;
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber10().BȍőnCharFor(div10));
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber10().BȍőnCharSeperator());
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber10().BȍőnCharFor(mod10));
|
||||
} else if (values.length <= 1000) {
|
||||
int count = BȍőnRangTelNul();
|
||||
int mod10 = count % 10;
|
||||
int div10 = count / 10;
|
||||
int div100 = count / 100;
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber10().BȍőnCharFor(div10));
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber10().BȍőnCharSeperator());
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber10().BȍőnCharFor(div100));
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber10().BȍőnCharSeperator());
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber10().BȍőnCharFor(mod10));
|
||||
} else {
|
||||
throw new IllegalStateException("Can't handle more than 1000 values.");
|
||||
}
|
||||
if (BaseGlyphSet.HEBREW.equals(glyphSet)) {
|
||||
return buf.reverse().toString(); // TODO: ImGui workaround
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
default String BȍőnGlyphSetNumber16(BaseGlyphSet glyphSet) {
|
||||
StringBuilder buf = new StringBuilder();
|
||||
T[] values = BãßInstances();
|
||||
if (values.length <= 16) {
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(BȍőnRangTelNul()));
|
||||
} else if (values.length <= 256) {
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(BȍőnRangTelNul() >> 4));
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharSeperator());
|
||||
BaseGlyphSet secondGlyphSet = glyphSet.BȍőnGlyphSetNumber16().BȍőnAltGlyphSet();
|
||||
if (secondGlyphSet == null) {
|
||||
secondGlyphSet = glyphSet;
|
||||
}
|
||||
buf.append(secondGlyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(BȍőnRangTelNul() & 0x0F));
|
||||
} else if (values.length <= 0xFFF+1) {
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor((BȍőnRangTelNul() >> 8) & 0x0F));
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber16().BȍőnCharSeperator());
|
||||
BaseGlyphSet secondGlyphSet = glyphSet.BȍőnGlyphSetNumber16().BȍőnAltGlyphSet();
|
||||
if (secondGlyphSet == null) {
|
||||
secondGlyphSet = glyphSet;
|
||||
}
|
||||
buf.append(secondGlyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor((BȍőnRangTelNul() >> 4) & 0x0F));
|
||||
buf.append(secondGlyphSet.BȍőnGlyphSetNumber16().BȍőnCharSeperator());
|
||||
buf.append(secondGlyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(BȍőnRangTelNul() & 0x0F));
|
||||
} else {
|
||||
throw new IllegalStateException("Can't handle more than 0xFFF values.");
|
||||
}
|
||||
if (BaseGlyphSet.HEBREW.equals(glyphSet)) {
|
||||
return buf.reverse().toString(); // TODO: ImGui workaround
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
default String BȍőnGlyphSetNumber36(BaseGlyphSet glyphSet) {
|
||||
StringBuilder buf = new StringBuilder();
|
||||
T[] values = BãßInstances();
|
||||
if (values.length <= 9) {
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber36().BȍőnCharFor36(BȍőnRangTelEen()));
|
||||
} else if (values.length <= 99) {
|
||||
int count = BȍőnRangTelNul();
|
||||
int mod10 = count % 9 + 1;
|
||||
int div10 = count / 9 + 1;
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber36().BȍőnCharFor36(div10));
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber36().BȍőnCharSeperator());
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber36().BȍőnCharFor36(mod10));
|
||||
} else if (values.length <= 999) {
|
||||
int count = BȍőnRangTelNul();
|
||||
int mod10 = count % 9 + 1;
|
||||
int div10 = count / 90 + 1;
|
||||
int div100 = count / 900 + 1;
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber36().BȍőnCharFor36(div10));
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber36().BȍőnCharSeperator());
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber36().BȍőnCharFor36(div100));
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber36().BȍőnCharSeperator());
|
||||
buf.append(glyphSet.BȍőnGlyphSetNumber36().BȍőnCharFor36(mod10));
|
||||
} else {
|
||||
throw new IllegalStateException("Can't handle more than 1000 values.");
|
||||
}
|
||||
if (BaseGlyphSet.HEBREW.equals(glyphSet)) {
|
||||
return buf.reverse().toString(); // TODO: ImGui workaround
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
default T BãßValueOfTone(String identifierTone) {
|
||||
Map<String,Object> mapTone = GET_BBC().GET_MAP_OBJ(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
if (mapTone.isEmpty()) {
|
||||
mapTone.putAll(BãßInstancesStream().collect(Collectors.toMap(v -> v.BȍőnIdentifierTone(), v -> v)));
|
||||
}
|
||||
return (T) mapTone.get(identifierTone);
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
default T BãßValueOfChina(String chinaKey) {
|
||||
Map<String,Object> mapChina = GET_BBC().GET_MAP_OBJ(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
if (mapChina.isEmpty()) {
|
||||
mapChina.putAll(BãßInstancesStream().collect(Collectors.toMap(v -> v.BȍőnChinaKey(), v -> v)));
|
||||
}
|
||||
return (T) mapChina.get(chinaKey);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T02PartBinary", purpose = "The distribution by 2.")
|
||||
public enum T02PartBinary implements BãßBȍőnPartʸᴰ<T02PartBinary> {
|
||||
|
||||
PART_1("˧", "低", "low"),
|
||||
PART_2("꜔", "高", "high"),
|
||||
;
|
||||
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T02PartBinary(String idTone, String chinaKey, String chinaValue) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T03PartTrit", purpose = "The distribution by 3.")
|
||||
public enum T03PartTrit implements BãßBȍőnPartʸᴰ<T03PartTrit> {
|
||||
|
||||
PART_1("˦","一","1"),
|
||||
PART_2("˧","二","2"),
|
||||
PART_3("˨","三","3"),
|
||||
;
|
||||
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T03PartTrit(String idTone, String chinaKey, String chinaValue) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,35 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T04PartQuad", purpose = "The distribution by 4.")
|
||||
@BãßBȍőnPartAlt1Infoʸᴰ(name = "Cardinal direction", website = "https://simple.wikipedia.org/wiki/Cardinal_direction")
|
||||
public enum T04PartQuad implements BãßBȍőnPartAlt1ʸᴰ<T04PartQuad> {
|
||||
|
||||
PART_1("˥","北","north","N"),
|
||||
PART_2("꜒","東","east", "E"),
|
||||
PART_3("꜖","西","west", "W"),
|
||||
PART_4("˩","南","south","S"),
|
||||
;
|
||||
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T04PartQuad(String idTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_1_VALUE, alt1Value);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
|
||||
public T02PartBinary splitPartBinary(T02PartBinary part) {
|
||||
return T02PartBinary.values()[(ordinal() >> part.ordinal()) & 1];
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T05PartPental", purpose = "The distribution by 5 called Wuxing.")
|
||||
@BãßBȍőnPartAlt1Infoʸᴰ(name = "Pentagram", website = "https://en.wikipedia.org/wiki/Pentagram")
|
||||
@BãßBȍőnPartAlt2Infoʸᴰ(name = "Pythagorean Interpretations", website = "http://wisdomofhypatia.com/OM/BA/PP.html")
|
||||
public enum T05PartPental implements BãßBȍőnPartAlt2ʸᴰ<T05PartPental> {
|
||||
|
||||
PART_1("˥","火","fire", "EI","heile"),
|
||||
PART_2("˦","水","water","U", "hudor"),
|
||||
PART_3("˧","木","wood" ,"I", "idea"),
|
||||
PART_4("˨","金","gold", "A", "aer"),
|
||||
PART_5("˩","土","earth","G", "gaia"),
|
||||
;
|
||||
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T05PartPental(String idTone, String chinaKey, String chinaValue, String alt1Value, String alt2Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_1_VALUE, alt1Value);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_2_VALUE, alt2Value);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,41 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T06PartSeximal", purpose = "The distribution by 6.")
|
||||
@BãßBȍőnPartAlt1Infoʸᴰ(name = "ADFGVX cipher", website = "https://en.wikipedia.org/wiki/ADFGVX_cipher")
|
||||
public enum T06PartSeximal implements BãßBȍőnPartAlt1ʸᴰ<T06PartSeximal> {
|
||||
|
||||
PART_1("˦","四","4","A"),
|
||||
PART_2("˨","五","5","D"),
|
||||
PART_3("꜓","六","6","F"),
|
||||
PART_4("꜕","七","7","G"),
|
||||
PART_5("꜊","八","8","V"),
|
||||
PART_6("꜏","九","9","X"),
|
||||
;
|
||||
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T06PartSeximal(String idTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_1_VALUE, alt1Value);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
|
||||
public T02PartBinary splitPartBinary() {
|
||||
return T02PartBinary.values()[ordinal() & 1];
|
||||
}
|
||||
|
||||
public T03PartTrit splitPartTrit() {
|
||||
return T03PartTrit.values()[ordinal() >> 1];
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T07PartPlanIt", purpose = "The distribution by 7.")
|
||||
@BãßBȍőnPartAlt1Infoʸᴰ(name = "Fallen sign", website = "https://en.wikipedia.org/wiki/Classical_planet#Western_astrology")
|
||||
public enum T07PartPlanIt implements BãßBȍőnPartAlt1ʸᴰ<T07PartPlanIt> {
|
||||
|
||||
PART_1("˥","♎︎","libra", "天秤座"),
|
||||
PART_2("꜉","♏︎","scorpio", "天蠍座"),
|
||||
PART_3("꜋","♓︎","pisces", "雙魚座"),
|
||||
PART_4("꜔","♍︎","virgo", "處女座"),
|
||||
PART_5("꜎","♋︎","cancer", "癌症"),
|
||||
PART_6("꜐","♑︎","capricorn","摩羯座"),
|
||||
PART_7("˩","♈︎","aries", "白羊座"),
|
||||
;
|
||||
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T07PartPlanIt(String idTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_1_VALUE, alt1Value);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T08PartOctal", purpose = "The distribution by 8.")
|
||||
public enum T08PartOctal implements BãßBȍőnPartʸᴰ<T08PartOctal>,BãßBȍőnPartShiftBitsʸᴰ<T08PartOctal> {
|
||||
|
||||
PART_1("˥","心","heart",0),
|
||||
PART_2("˩","頭","head", 3),
|
||||
PART_3("꜒","眼","eye", 6),
|
||||
PART_4("꜖","嘴","mouth",9),
|
||||
PART_5("꜈","臂","arm", 12),
|
||||
PART_6("꜌","手","hand", 15),
|
||||
PART_7("꜍","肢","leg", 18),
|
||||
PART_8("꜑","腳","feet", 21),
|
||||
;
|
||||
|
||||
public static int BIT_COUNT = 3;
|
||||
private static final byte BITMASK = 0x07;
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T08PartOctal(String idTone, String chinaKey, String chinaValue, int shiftBits) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.SHIFT_BITS, Integer.valueOf(shiftBits));
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
|
||||
public static T08PartOctal indexOf(T08PartOctal group, int value) {
|
||||
return T08PartOctal.values()[(value >> group.getShiftBits()) & BITMASK];
|
||||
}
|
||||
|
||||
public T02PartBinary splitPartBinary(T03PartTrit part) {
|
||||
return T02PartBinary.values()[(ordinal() >> part.ordinal()) & 1];
|
||||
}
|
||||
|
||||
public int ordinalOf(T08PartOctal group) {
|
||||
return ordinal() << group.getShiftBits();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T10PartDecimal", purpose = "The distribution by 10.")
|
||||
@BãßBȍőnPartAlt1Infoʸᴰ(name = "Tone Letter LR", website = "https://en.wikipedia.org/wiki/Tone_letter")
|
||||
@BãßBȍőnPartAlt2Infoʸᴰ(name = "Tone Letter RL", website = "https://en.wikipedia.org/wiki/Tone_letter")
|
||||
public enum T10PartDecimal implements BãßBȍőnPartAlt2ʸᴰ<T10PartDecimal> {
|
||||
|
||||
PART_1 ("˥","零","zero", "˥","꜒"),
|
||||
PART_2 ("˦","壹","one", "˦","꜓"),
|
||||
PART_3 ("˧","貳","two", "˧","꜔"),
|
||||
PART_4 ("˨","參","three","˨","꜕"),
|
||||
PART_5 ("˩","肆","four", "˩","꜖"),
|
||||
PART_6 ("꜖","伍","five", "꜌","꜑"),
|
||||
PART_7 ("꜕","陸","six", "꜋","꜐"),
|
||||
PART_8 ("꜔","柒","seven","꜊","꜏"),
|
||||
PART_9 ("꜓","捌","eight","꜉","꜎"),
|
||||
PART_10("꜒","玖","nine", "꜈","꜍"),
|
||||
;
|
||||
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T10PartDecimal(String idTone, String chinaKey, String chinaValue, String alt1Value, String alt2Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_1_VALUE, alt1Value);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_2_VALUE, alt2Value);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T11PartUndecimal", purpose = "The distribution by 11.")
|
||||
@BãßBȍőnPartAlt1Infoʸᴰ(name = "Tamil numerals", website = "https://en.wikipedia.org/wiki/Tamil_numerals")
|
||||
public enum T11PartUndecimal implements BãßBȍőnPartAlt1ʸᴰ<T11PartUndecimal> {
|
||||
|
||||
PART_1 ("˥","走","walk", "௦"),
|
||||
PART_2 ("꜈","跑","run", "௧"),
|
||||
PART_3 ("꜉","坐","sit", "௨"),
|
||||
PART_4 ("꜋","掛","hang", "௩"),
|
||||
PART_5 ("꜌","鋪","lay", "௪"),
|
||||
PART_6 ("꜔","跳","jump", "௫"),
|
||||
PART_7 ("꜍","落","drop", "௬"),
|
||||
PART_8 ("꜎","寂","lonely","௭"),
|
||||
PART_9 ("꜏","談","talk", "௮"),
|
||||
PART_10("꜐","春","life", "௯"),
|
||||
PART_11("˩","耦","mate", "௰"),
|
||||
;
|
||||
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T11PartUndecimal(String idTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_1_VALUE, alt1Value);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T12PartUncial", purpose = "The distribution by 12.")
|
||||
@BãßBȍőnPartAlt1Infoʸᴰ(name = "Transdecimal symbols", website = "https://en.wikipedia.org/wiki/Duodecimal#Transdecimal_symbols")
|
||||
public enum T12PartUncial implements BãßBȍőnPartAlt1ʸᴰ<T12PartUncial> {
|
||||
|
||||
PART_1 ("˥","日","sun", "0"),
|
||||
PART_2 ("˧","月","moon", "1"),
|
||||
PART_3 ("˩","星","star", "2"),
|
||||
PART_4 ("꜒","山","mountain","3"),
|
||||
PART_5 ("꜔","龍","dragon", "4"),
|
||||
PART_6 ("꜖","鳳","phoenix", "5"),
|
||||
PART_7 ("꜈","杯","cup", "6"),
|
||||
PART_8 ("꜊","藻","pondweed","7"),
|
||||
PART_9 ("꜌","爐","furnace", "8"),
|
||||
PART_10("꜍","種","seed", "9"),
|
||||
PART_11("꜏","黼","axe", "\u218a"), // TURNED DIGIT TWO
|
||||
PART_12("꜑","亞","nozero", "\u218b"), // TURNED DIGIT THREE
|
||||
;
|
||||
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T12PartUncial(String idTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_1_VALUE, alt1Value);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T16PartHex", purpose = "The distribution by 16.")
|
||||
@BãßBȍőnPartAlt1Infoʸᴰ(name = "Hexadecimal", website = "https://en.wikipedia.org/wiki/Hexadecimal")
|
||||
public enum T16PartHex implements BãßBȍőnPartAlt1ʸᴰ<T16PartHex> {
|
||||
|
||||
PART_1 ("˥","氫","hydrogen", "0"),
|
||||
PART_2 ("˦","氦","helium", "1"),
|
||||
PART_3 ("˨","鋰","lithium", "2"),
|
||||
PART_4 ("˩","鈹","beryllium", "3"),
|
||||
PART_5 ("꜒","硼","boron", "4"),
|
||||
PART_6 ("꜓","碳","carbon", "5"),
|
||||
PART_7 ("꜕","氮","nitrogen", "6"),
|
||||
PART_8 ("꜖","氧","oxygen", "7"),
|
||||
PART_9 ("꜈","氟","fluorine", "8"),
|
||||
PART_10("꜉","氖","neon", "9"),
|
||||
PART_11("꜋","鈉","sodium", "A"),
|
||||
PART_12("꜌","鎂","magnesium", "B"),
|
||||
PART_13("꜍","鋁","aluminium", "C"),
|
||||
PART_14("꜎","矽","silicon", "D"),
|
||||
PART_15("꜐","磷","phosphorus","E"),
|
||||
PART_16("꜑","硫","sulfur", "F"),
|
||||
;
|
||||
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T16PartHex(String idTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_1_VALUE, alt1Value);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
|
||||
public T02PartBinary splitPartBinary(T04PartQuad part) {
|
||||
return T02PartBinary.values()[(ordinal() >> part.ordinal()) & 1];
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T20PartScore", purpose = "The distribution by 20.")
|
||||
@BãßBȍőnPartAlt1Infoʸᴰ(name = "SI-Unit Types", website = "https://en.wikipedia.org/wiki/Metric_prefix")
|
||||
@BãßBȍőnPartAlt2Infoʸᴰ(name = "Vigesimal", website = "https://en.wikipedia.org/wiki/Vigesimal#Places")
|
||||
@BãßBȍőnPartAlt3Infoʸᴰ(name = "Vigesimal Alternative", website = "https://en.wikipedia.org/wiki/Vigesimal#Places")
|
||||
@BãßBȍőnPartAlt4Infoʸᴰ(name = "Open Location Code", website = "https://en.wikipedia.org/wiki/Open_Location_Code")
|
||||
public enum T20PartScore implements BãßBȍőnPartAlt4ʸᴰ<T20PartScore> {
|
||||
|
||||
PART_1 ("˥", "尧", "yotta", "Y", "0", "0", "2"),
|
||||
PART_2 ("˦", "泽", "zetta", "Z", "1", "1", "3"),
|
||||
PART_3 ("˧", "艾", "exa", "E", "2", "2", "4"),
|
||||
PART_4 ("˨", "拍", "peta", "P", "3", "3", "5"),
|
||||
PART_5 ("˩", "太", "tera", "T", "4", "4", "6"),
|
||||
PART_6 ("꜒", "吉", "giga", "G", "5", "5", "7"),
|
||||
PART_7 ("꜓", "兆", "mega", "M", "6", "6", "8"),
|
||||
PART_8 ("꜔", "千", "kilo", "k", "7", "7", "9"),
|
||||
PART_9 ("꜕", "百", "hecto", "h", "8", "8", "C"),
|
||||
PART_10("꜖", "十", "deca", "da","9", "9", "F"),
|
||||
PART_11("꜈", "分", "deci", "d", "A", "A", "G"),
|
||||
PART_12("꜉", "厘", "centi", "c", "B", "B", "H"),
|
||||
PART_13("꜊", "毫", "milli", "m", "C", "C", "J"),
|
||||
PART_14("꜋", "微", "micro", "µ", "D", "D", "M"),
|
||||
PART_15("꜌", "纳", "nano", "n", "E", "E", "P"),
|
||||
PART_16("꜍", "皮", "pico", "p", "F", "F", "Q"),
|
||||
PART_17("꜎", "飞", "femto", "f", "G", "G", "R"),
|
||||
PART_18("꜏", "阿", "atto", "a", "H", "H", "V"),
|
||||
PART_19("꜐", "仄", "zepto", "z", "I", "J", "W"),
|
||||
PART_20("꜑", "幺", "yocto", "y", "J", "K", "X"),
|
||||
;
|
||||
|
||||
private static final Map<String, T20PartScore> OPENLC_MAP = Collections.unmodifiableMap(
|
||||
Arrays.asList(values()).stream().collect(Collectors.toMap(v -> v.BȍőnAlt4Value(), v -> v)));
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T20PartScore(String idTone, String chinaKey, String chinaValue,
|
||||
String alt1Value, String alt2Value, String alt3Value, String alt4Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_1_VALUE, alt1Value);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_2_VALUE, alt2Value);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_3_VALUE, alt3Value);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ALT_4_VALUE, alt4Value);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
|
||||
public T20PartScore BãßValueOfOpenLC(String openLCKey) {
|
||||
return OPENLC_MAP.get(openLCKey);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,85 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnClassInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "T60Sexagesimal", purpose = "The distribution by 60.")
|
||||
public enum T60PartSexagesimal implements BãßBȍőnPartʸᴰ<T60PartSexagesimal> {
|
||||
|
||||
PART_1 ("˥˥","牛","cow"),
|
||||
PART_2 ("˥˦","鸡","chicken"),
|
||||
PART_3 ("˥˧","羊","sheep"),
|
||||
PART_4 ("˥˨","狼","wolf"),
|
||||
PART_5 ("˥˩","鼠","rat"),
|
||||
PART_6 ("˥꜒","貓","cat"),
|
||||
PART_7 ("˥꜓","兔","rabbit"),
|
||||
PART_8 ("˥꜔","猿","ape"),
|
||||
PART_9 ("˥꜕","蛇","snake"),
|
||||
PART_10("˥꜖","马","horse"),
|
||||
PART_11("˦˥","象","elepant"),
|
||||
PART_12("˦˦","豹","leopard"),
|
||||
PART_13("˦˧","鴉","crow"),
|
||||
PART_14("˦˨","豬","pig"),
|
||||
PART_15("˦˩","狗","dog"),
|
||||
PART_16("˦꜒","魚","fish"),
|
||||
PART_17("˦꜓","虾","shrimp"),
|
||||
PART_18("˦꜔","鲸","whale"),
|
||||
PART_19("˦꜕","熊","bear"),
|
||||
PART_20("˦꜖","鹿","deer"),
|
||||
PART_21("˧˥","驴","donkey"),
|
||||
PART_22("˧˦","貘","tapir"),
|
||||
PART_23("˧˧","鸟","bird"),
|
||||
PART_24("˧˨","鹤","crane"),
|
||||
PART_25("˧˩","鹰","eagle"),
|
||||
PART_26("˧꜒","隼","falcon"),
|
||||
PART_27("˧꜓","鹅","goose"),
|
||||
PART_28("˧꜔","蝾","salamander"),
|
||||
PART_29("˧꜕","龟","turtle"),
|
||||
PART_30("˧꜖","蜈","centipede"),
|
||||
PART_31("˨˥","蝇","fly"),
|
||||
PART_32("˨˦","蝎","scorpion"),
|
||||
PART_33("˨˧","虫","worm"),
|
||||
PART_34("˨˨","虎","tiger"),
|
||||
PART_35("˨˩","駝","camel"),
|
||||
PART_36("˨꜒","猴","monkey"),
|
||||
PART_37("˨꜓","鯊","shark"),
|
||||
PART_38("˨꜔","鴨","duck"),
|
||||
PART_39("˨꜕","芥","mustard"),
|
||||
PART_40("˨꜖","鹽","salt"),
|
||||
PART_41("˩˥","椒","pepper"),
|
||||
PART_42("˩˦","薑","ginger"),
|
||||
PART_43("˩˧","穀","corn"),
|
||||
PART_44("˩˨","豆","beans"),
|
||||
PART_45("˩˩","柚","pomelos"),
|
||||
PART_46("˩꜒","棗","jujube"),
|
||||
PART_47("˩꜓","瓜","melon"),
|
||||
PART_48("˩꜔","葡","grape"),
|
||||
PART_49("˩꜕","梅","plum"),
|
||||
PART_50("˩꜖","灰","lime"),
|
||||
PART_51("꜒˥","梨","pear"),
|
||||
PART_52("꜒˦","蕉","banana"),
|
||||
PART_53("꜒˧","檸","lemon"),
|
||||
PART_54("꜒˨","柿","persimmon"),
|
||||
PART_55("꜒˩","橙","orange"),
|
||||
PART_56("꜒꜒","桃","peach"),
|
||||
PART_57("꜒꜓","杏","apricot"),
|
||||
PART_58("꜒꜔","莓","strawberry"),
|
||||
PART_59("꜒꜕","薯","patato"),
|
||||
PART_60("꜒꜖","蘋","apple"),
|
||||
;
|
||||
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<BãßBȍőnPartKeyʸᴰ> GET_BBC() { return BBC; }
|
||||
public static int LENGTH() { return values().length; };
|
||||
|
||||
private T60PartSexagesimal(String idTone, String chinaKey, String chinaValue) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.ID_TONE, idTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part.warp;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnEnumInstanceʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BasePartFactory;
|
||||
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public enum TOSWarpCore implements BãßBȍőnEnumInstanceʸᴰ<TOSWarpCore> {
|
||||
|
||||
INSTANCE;
|
||||
|
||||
private String armedWarpCipherName;
|
||||
private String armedWarpCipherDescription;
|
||||
|
||||
public void BãßLockWarpCipher() {
|
||||
for (int base:BasePartFactory.INSTANCE.BãßBases()) {
|
||||
for (BãßBȍőnPartʸᴰ<?> part:BasePartFactory.INSTANCE.BãßBuildPartsByBase(base)) {
|
||||
BãßBȍőnCoffinOpenʸᴰ.class.cast(part.GET_BBC()).LOCK_COFFIN();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public WarpCipher BãßSaveWarpCipher() {
|
||||
WarpCipher warpCore = new WarpCipher();
|
||||
if (armedWarpCipherName == null) {
|
||||
warpCore.setCipherName("default");
|
||||
} else {
|
||||
warpCore.setCipherName(armedWarpCipherName);
|
||||
}
|
||||
if (armedWarpCipherDescription == null) {
|
||||
warpCore.setCipherName("Current active cipher.");
|
||||
} else {
|
||||
warpCore.setCipherDescription(armedWarpCipherDescription);
|
||||
}
|
||||
for (int base:BasePartFactory.INSTANCE.BãßBases()) {
|
||||
WarpCipherHeart heart = new WarpCipherHeart();
|
||||
BãßBȍőnPartʸᴰ<?>[] bases = BasePartFactory.INSTANCE.BãßBuildPartsByBase(base);
|
||||
heart.setPartKey(bases[0].BȍőnNaamI18N());
|
||||
for (BãßBȍőnPartʸᴰ<?> part:bases) {
|
||||
WarpCipherHeartCore core = new WarpCipherHeartCore();
|
||||
core.setIdentifierTone(part.BȍőnIdentifierTone());
|
||||
core.setChinaKey(part.BȍőnChinaKey());
|
||||
core.setChinaValue(part.BȍőnChinaValue());
|
||||
heart.getHeartCores().add(core);
|
||||
}
|
||||
warpCore.getCipherHearts().add(heart);
|
||||
}
|
||||
return warpCore;
|
||||
}
|
||||
|
||||
public void BãßLoadWarpCipher(WarpCipher warpCore) {
|
||||
armedWarpCipherName = warpCore.getCipherName();
|
||||
armedWarpCipherDescription = warpCore.getCipherDescription();
|
||||
// TODO: load warpcore
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part.warp;
|
||||
|
||||
public class TOSWarpCoreDriver {
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part.warp;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class WarpCipher {
|
||||
|
||||
private String cipherName;
|
||||
private String cipherDescription;
|
||||
private List<WarpCipherHeart> cipherHearts;
|
||||
|
||||
public WarpCipher() {
|
||||
cipherHearts = new ArrayList<>();
|
||||
}
|
||||
|
||||
public String getCipherName() {
|
||||
return cipherName;
|
||||
}
|
||||
|
||||
public void setCipherName(String cipherName) {
|
||||
this.cipherName = cipherName;
|
||||
}
|
||||
|
||||
public String getCipherDescription() {
|
||||
return cipherDescription;
|
||||
}
|
||||
|
||||
public void setCipherDescription(String cipherDescription) {
|
||||
this.cipherDescription = cipherDescription;
|
||||
}
|
||||
|
||||
public List<WarpCipherHeart> getCipherHearts() {
|
||||
return cipherHearts;
|
||||
}
|
||||
|
||||
public void setCipherHearts(List<WarpCipherHeart> cipherHearts) {
|
||||
this.cipherHearts = cipherHearts;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part.warp;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class WarpCipherHeart {
|
||||
|
||||
private String partKey;
|
||||
private List<WarpCipherHeartCore> heartCores;
|
||||
|
||||
public WarpCipherHeart() {
|
||||
heartCores = new ArrayList<>();
|
||||
}
|
||||
|
||||
public String getPartKey() {
|
||||
return partKey;
|
||||
}
|
||||
|
||||
public void setPartKey(String partKey) {
|
||||
this.partKey = partKey;
|
||||
}
|
||||
|
||||
public List<WarpCipherHeartCore> getHeartCores() {
|
||||
return heartCores;
|
||||
}
|
||||
|
||||
public void setHeartCores(List<WarpCipherHeartCore> heartCores) {
|
||||
this.heartCores = heartCores;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part.warp;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class WarpCipherHeartCore {
|
||||
|
||||
private String identifierTone;
|
||||
private String chinaKey;
|
||||
private String chinaValue;
|
||||
|
||||
public WarpCipherHeartCore() {
|
||||
}
|
||||
|
||||
public String getIdentifierTone() {
|
||||
return identifierTone;
|
||||
}
|
||||
|
||||
public void setIdentifierTone(String identifierTone) {
|
||||
this.identifierTone = identifierTone;
|
||||
}
|
||||
|
||||
public String getChinaKey() {
|
||||
return chinaKey;
|
||||
}
|
||||
|
||||
public void setChinaKey(String chinaKey) {
|
||||
this.chinaKey = chinaKey;
|
||||
}
|
||||
|
||||
public String getChinaValue() {
|
||||
return chinaValue;
|
||||
}
|
||||
|
||||
public void setChinaValue(String chinaValue) {
|
||||
this.chinaValue = chinaValue;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
package love.distributedrebirth.numberxd.base2t.type;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
/**
|
||||
* Holds an 3 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class V003Timble implements BaseNumber<V003Timble> {
|
||||
|
||||
public static int BIT_COUNT = T08PartOctal.BIT_COUNT;
|
||||
private final T08PartOctal value;
|
||||
|
||||
public V003Timble() {
|
||||
this(T08PartOctal.PART_1);
|
||||
}
|
||||
|
||||
public V003Timble(BaseIteratorOctal values) {
|
||||
this(values.next());
|
||||
}
|
||||
|
||||
public V003Timble(T08PartOctal value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public T08PartOctal getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V003Timble toClone() {
|
||||
return new V003Timble(getValue());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
appender.add(getValue());
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
package love.distributedrebirth.numberxd.base2t.type;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T02PartBinary;
|
||||
|
||||
/**
|
||||
* Holds an 6 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class V006Tixte implements BaseNumber<V006Tixte> {
|
||||
|
||||
public static int BIT_COUNT = V003Timble.BIT_COUNT * T02PartBinary.LENGTH();
|
||||
private V003Timble[] values = new V003Timble[T02PartBinary.LENGTH()];
|
||||
|
||||
public V006Tixte() {
|
||||
this(new V003Timble(), new V003Timble());
|
||||
}
|
||||
|
||||
public V006Tixte(BaseIteratorOctal values) {
|
||||
this(new V003Timble(values), new V003Timble(values));
|
||||
}
|
||||
|
||||
private V006Tixte(V003Timble valueHigh, V003Timble valueLow) {
|
||||
setValue(T02PartBinary.PART_1, valueHigh);
|
||||
setValue(T02PartBinary.PART_2, valueLow);
|
||||
}
|
||||
|
||||
public V003Timble getValue(T02PartBinary part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T02PartBinary part, V003Timble value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V006Tixte toClone() {
|
||||
return new V006Tixte(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T02PartBinary.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,61 @@
|
|||
package love.distributedrebirth.numberxd.base2t.type;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T03PartTrit;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
/**
|
||||
* Holds an 9 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class V009Tyte implements BaseNumberTyte<V009Tyte> {
|
||||
|
||||
public static int BIT_COUNT = V003Timble.BIT_COUNT * T03PartTrit.LENGTH();
|
||||
private final V003Timble[] values = new V003Timble[T03PartTrit.LENGTH()];
|
||||
|
||||
public V009Tyte() {
|
||||
this(new V003Timble(), new V003Timble(), new V003Timble());
|
||||
}
|
||||
|
||||
public V009Tyte(BaseIteratorOctal values) {
|
||||
this(new V003Timble(values), new V003Timble(values), new V003Timble(values));
|
||||
}
|
||||
|
||||
public V009Tyte(T08PartOctal valueHigh, T08PartOctal valueMedium, T08PartOctal valueLow) {
|
||||
this(new V003Timble(valueHigh), new V003Timble(valueMedium), new V003Timble(valueLow));
|
||||
}
|
||||
|
||||
private V009Tyte(V003Timble valueHigh, V003Timble valueMedium, V003Timble valueLow) {
|
||||
values[T03PartTrit.PART_1.ordinal()] = valueHigh;
|
||||
values[T03PartTrit.PART_2.ordinal()] = valueMedium;
|
||||
values[T03PartTrit.PART_3.ordinal()] = valueLow;
|
||||
}
|
||||
|
||||
public V003Timble getValue(T03PartTrit part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V009Tyte toClone() {
|
||||
return new V009Tyte(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T03PartTrit.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillTytesByReference(BaseAppenderTyte appender) {
|
||||
appender.add(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,69 @@
|
|||
package love.distributedrebirth.numberxd.base2t.type;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T02PartBinary;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T06PartSeximal;
|
||||
|
||||
/**
|
||||
* Holds an 18 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class V012Tord implements BaseNumberTyte<V012Tord> {
|
||||
|
||||
public static int BIT_COUNT = V009Tyte.BIT_COUNT * T02PartBinary.LENGTH();
|
||||
private V009Tyte[] values = new V009Tyte[T02PartBinary.LENGTH()];
|
||||
|
||||
public V012Tord() {
|
||||
this(new V009Tyte(), new V009Tyte());
|
||||
}
|
||||
|
||||
public V012Tord(BaseIteratorOctal values) {
|
||||
this(new V009Tyte(values), new V009Tyte(values));
|
||||
}
|
||||
|
||||
public V012Tord(BaseIteratorTyte values) {
|
||||
this(values.next(), values.next());
|
||||
}
|
||||
|
||||
private V012Tord(V009Tyte valueHigh, V009Tyte valueLow) {
|
||||
setValue(T02PartBinary.PART_1, valueHigh);
|
||||
setValue(T02PartBinary.PART_2, valueLow);
|
||||
}
|
||||
|
||||
public V009Tyte getValue(T02PartBinary part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T02PartBinary part, V009Tyte value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
public V003Timble getTimblePart(T06PartSeximal part) {
|
||||
return getValue(part.splitPartBinary()).getValue(part.splitPartTrit());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V012Tord toClone() {
|
||||
return new V012Tord(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T02PartBinary.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillTytesByReference(BaseAppenderTyte appender) {
|
||||
T02PartBinary.PART_1.BãßVoorElk(v -> getValue(v).fillTytesByReference(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
package love.distributedrebirth.numberxd.base2t.type;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T03PartTrit;
|
||||
|
||||
/**
|
||||
* Holds an 27 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class V027Temvig implements BaseNumberTyte<V027Temvig> {
|
||||
|
||||
public static int BIT_COUNT = V009Tyte.BIT_COUNT * T03PartTrit.LENGTH();
|
||||
private V009Tyte[] values = new V009Tyte[T03PartTrit.LENGTH()];
|
||||
|
||||
public V027Temvig() {
|
||||
this(new V009Tyte(), new V009Tyte(), new V009Tyte());
|
||||
}
|
||||
|
||||
public V027Temvig(BaseIteratorOctal values) {
|
||||
this(new V009Tyte(values), new V009Tyte(values), new V009Tyte(values));
|
||||
}
|
||||
|
||||
public V027Temvig(BaseIteratorTyte values) {
|
||||
this(values.next(), values.next(), values.next());
|
||||
}
|
||||
|
||||
private V027Temvig(V009Tyte valueHigh, V009Tyte valueMedium, V009Tyte valueLow) {
|
||||
setValue(T03PartTrit.PART_1, valueHigh);
|
||||
setValue(T03PartTrit.PART_2, valueMedium);
|
||||
setValue(T03PartTrit.PART_3, valueLow);
|
||||
}
|
||||
|
||||
public V009Tyte getValue(T03PartTrit part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T03PartTrit part, V009Tyte value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V027Temvig toClone() {
|
||||
return new V027Temvig(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T03PartTrit.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillTytesByReference(BaseAppenderTyte appender) {
|
||||
T03PartTrit.PART_1.BãßVoorElk(v -> getValue(v).fillTytesByReference(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,75 @@
|
|||
package love.distributedrebirth.numberxd.base2t.type;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T02PartBinary;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T04PartQuad;
|
||||
|
||||
/**
|
||||
* Holds an 36 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class V036Teger implements BaseNumberTyte<V036Teger> {
|
||||
|
||||
public static int BIT_COUNT = V012Tord.BIT_COUNT * T02PartBinary.LENGTH();
|
||||
private V012Tord[] values = new V012Tord[T02PartBinary.LENGTH()];
|
||||
|
||||
public V036Teger() {
|
||||
this(new V012Tord(), new V012Tord());
|
||||
}
|
||||
|
||||
public V036Teger(BaseIteratorOctal values) {
|
||||
this(new V012Tord(values), new V012Tord(values));
|
||||
}
|
||||
|
||||
public V036Teger(BaseIteratorTyte values) {
|
||||
this(new V012Tord(values), new V012Tord(values));
|
||||
}
|
||||
|
||||
private V036Teger(V012Tord valueHigh, V012Tord valueLow) {
|
||||
setValue(T02PartBinary.PART_1, valueHigh);
|
||||
setValue(T02PartBinary.PART_2, valueLow);
|
||||
}
|
||||
|
||||
public V012Tord getValue(T02PartBinary part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T02PartBinary part, V012Tord value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
public V009Tyte getTytePart(T04PartQuad part) {
|
||||
return getValue(part.splitPartBinary(T02PartBinary.PART_1))
|
||||
.getValue(part.splitPartBinary(T02PartBinary.PART_2));
|
||||
}
|
||||
|
||||
public void setTytePart(T04PartQuad part, V009Tyte value) {
|
||||
getValue(part.splitPartBinary(T02PartBinary.PART_1))
|
||||
.setValue(part.splitPartBinary(T02PartBinary.PART_2), value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V036Teger toClone() {
|
||||
return new V036Teger(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T02PartBinary.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillTytesByReference(BaseAppenderTyte appender) {
|
||||
T02PartBinary.PART_1.BãßVoorElk(v -> getValue(v).fillTytesByReference(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
package love.distributedrebirth.numberxd.base2t.type;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T07PartPlanIt;
|
||||
|
||||
/**
|
||||
* Holds an 42 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class V042Traw implements BaseNumber<V042Traw> {
|
||||
|
||||
public static int BIT_COUNT = V006Tixte.BIT_COUNT * T07PartPlanIt.LENGTH();
|
||||
private V006Tixte[] values = new V006Tixte[T07PartPlanIt.LENGTH()];
|
||||
|
||||
public V042Traw() {
|
||||
for (int i=0;i<values.length;i++) {
|
||||
this.values[i] = new V006Tixte();
|
||||
}
|
||||
}
|
||||
|
||||
public V042Traw(BaseIteratorOctal values) {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V006Tixte(values);
|
||||
}
|
||||
}
|
||||
|
||||
public V006Tixte getValue(T07PartPlanIt part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T07PartPlanIt part, V006Tixte value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V042Traw toClone() {
|
||||
return new V042Traw(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T07PartPlanIt.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,78 @@
|
|||
package love.distributedrebirth.numberxd.base2t.type;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T02PartBinary;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T03PartTrit;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
/**
|
||||
* Holds an 72 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class V072Tong implements BaseNumberTyte<V072Tong> {
|
||||
|
||||
public static int BIT_COUNT = V036Teger.BIT_COUNT * T02PartBinary.LENGTH();
|
||||
private V036Teger[] values = new V036Teger[T02PartBinary.LENGTH()];
|
||||
|
||||
public V072Tong() {
|
||||
this(new V036Teger(), new V036Teger());
|
||||
}
|
||||
|
||||
public V072Tong(BaseIteratorOctal values) {
|
||||
this(new V036Teger(values), new V036Teger(values));
|
||||
}
|
||||
|
||||
public V072Tong(BaseIteratorTyte values) {
|
||||
this(new V036Teger(values), new V036Teger(values));
|
||||
}
|
||||
|
||||
private V072Tong(V036Teger valueHigh, V036Teger valueLow) {
|
||||
setValue(T02PartBinary.PART_1, valueHigh);
|
||||
setValue(T02PartBinary.PART_2, valueLow);
|
||||
}
|
||||
|
||||
public V036Teger getValue(T02PartBinary part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T02PartBinary part, V036Teger value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
public V009Tyte getTytePart(T08PartOctal part) {
|
||||
return getValue(part.splitPartBinary(T03PartTrit.PART_1))
|
||||
.getValue(part.splitPartBinary(T03PartTrit.PART_2))
|
||||
.getValue(part.splitPartBinary(T03PartTrit.PART_3));
|
||||
}
|
||||
|
||||
public void setTytePart(T08PartOctal part, V009Tyte value) {
|
||||
getValue(part.splitPartBinary(T03PartTrit.PART_1))
|
||||
.getValue(part.splitPartBinary(T03PartTrit.PART_2))
|
||||
.setValue(part.splitPartBinary(T03PartTrit.PART_3), value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V072Tong toClone() {
|
||||
return new V072Tong(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T02PartBinary.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillTytesByReference(BaseAppenderTyte appender) {
|
||||
T02PartBinary.PART_1.BãßVoorElk(v -> getValue(v).fillTytesByReference(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,94 @@
|
|||
package love.distributedrebirth.numberxd.base2t.type;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T02PartBinary;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T03PartTrit;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T04PartQuad;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
|
||||
|
||||
/**
|
||||
* Holds an 144 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class V144Tocta implements BaseNumberTyte<V144Tocta> {
|
||||
|
||||
public static int BIT_COUNT = V072Tong.BIT_COUNT * T02PartBinary.LENGTH();
|
||||
private V072Tong[] values = new V072Tong[T02PartBinary.LENGTH()];
|
||||
|
||||
public V144Tocta() {
|
||||
this(new V072Tong(), new V072Tong());
|
||||
}
|
||||
|
||||
public V144Tocta(BaseIteratorOctal values) {
|
||||
this(new V072Tong(values), new V072Tong(values));
|
||||
}
|
||||
|
||||
public V144Tocta(BaseIteratorTyte values) {
|
||||
this(new V072Tong(values), new V072Tong(values));
|
||||
}
|
||||
|
||||
private V144Tocta(V072Tong valueHigh, V072Tong valueLow) {
|
||||
setValue(T02PartBinary.PART_1, valueHigh);
|
||||
setValue(T02PartBinary.PART_2, valueLow);
|
||||
}
|
||||
|
||||
public V072Tong getValue(T02PartBinary part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T02PartBinary part, V072Tong value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
public V009Tyte getTytePart(T16PartHex part) {
|
||||
return getValue(part.splitPartBinary(T04PartQuad.PART_1))
|
||||
.getValue(part.splitPartBinary(T04PartQuad.PART_2))
|
||||
.getValue(part.splitPartBinary(T04PartQuad.PART_3))
|
||||
.getValue(part.splitPartBinary(T04PartQuad.PART_4));
|
||||
}
|
||||
|
||||
public void setTytePart(T16PartHex part, V009Tyte value) {
|
||||
getValue(part.splitPartBinary(T04PartQuad.PART_1))
|
||||
.getValue(part.splitPartBinary(T04PartQuad.PART_2))
|
||||
.getValue(part.splitPartBinary(T04PartQuad.PART_3))
|
||||
.setValue(part.splitPartBinary(T04PartQuad.PART_4), value);
|
||||
}
|
||||
|
||||
public V012Tord getTordPart(T08PartOctal part) {
|
||||
return getValue(part.splitPartBinary(T03PartTrit.PART_1))
|
||||
.getValue(part.splitPartBinary(T03PartTrit.PART_2))
|
||||
.getValue(part.splitPartBinary(T03PartTrit.PART_3));
|
||||
}
|
||||
|
||||
public void setTordPart(T08PartOctal part, V012Tord value) {
|
||||
getValue(part.splitPartBinary(T03PartTrit.PART_1))
|
||||
.getValue(part.splitPartBinary(T03PartTrit.PART_2))
|
||||
.setValue(part.splitPartBinary(T03PartTrit.PART_3), value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V144Tocta toClone() {
|
||||
return new V144Tocta(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T02PartBinary.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillTytesByReference(BaseAppenderTyte appender) {
|
||||
T02PartBinary.PART_1.BãßVoorElk(v -> getValue(v).fillTytesByReference(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
package love.distributedrebirth.numberxd.base2t.typexl;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumberXL;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T20PartScore;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V042Traw;
|
||||
|
||||
/**
|
||||
* Holds an 840 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class V0x000348ˣᴸ implements BaseNumberXL<V0x000348ˣᴸ> {
|
||||
|
||||
public static int BIT_COUNT = V042Traw.BIT_COUNT * T20PartScore.LENGTH();
|
||||
private V042Traw[] values = new V042Traw[T20PartScore.LENGTH()];
|
||||
|
||||
public V0x000348ˣᴸ() {
|
||||
for (int i=0;i<values.length;i++) {
|
||||
this.values[i] = new V042Traw();
|
||||
}
|
||||
}
|
||||
|
||||
public V0x000348ˣᴸ(BaseIteratorOctal values) {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V042Traw(values);
|
||||
}
|
||||
}
|
||||
|
||||
public V042Traw getValue(T20PartScore part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T20PartScore part, V042Traw value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V0x000348ˣᴸ toClone() {
|
||||
return new V0x000348ˣᴸ(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T20PartScore.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
package love.distributedrebirth.numberxd.base2t.typexl;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumberTyteXL;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T60PartSexagesimal;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V027Temvig;
|
||||
|
||||
/**
|
||||
* Holds an 1620 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class V0x000654ˣᴸ implements BaseNumberTyteXL<V0x000654ˣᴸ> {
|
||||
|
||||
public static int BIT_COUNT = V027Temvig.BIT_COUNT * T60PartSexagesimal.LENGTH();
|
||||
private V027Temvig[] values = new V027Temvig[T60PartSexagesimal.LENGTH()];
|
||||
|
||||
public V0x000654ˣᴸ() {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V027Temvig();
|
||||
}
|
||||
}
|
||||
|
||||
public V0x000654ˣᴸ(BaseIteratorOctal values) {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V027Temvig(values);
|
||||
}
|
||||
}
|
||||
|
||||
public V027Temvig getValue(T60PartSexagesimal part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T60PartSexagesimal part, V027Temvig value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V0x000654ˣᴸ toClone() {
|
||||
return new V0x000654ˣᴸ(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T60PartSexagesimal.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillTytesByReference(BaseAppenderTyte appender) {
|
||||
T60PartSexagesimal.PART_1.BãßVoorElk(v -> getValue(v).fillTytesByReference(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
package love.distributedrebirth.numberxd.base2t.typexl;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumberTyteXL;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T02PartBinary;
|
||||
|
||||
/**
|
||||
* Holds an 3240 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class V0x000CA8ˣᴸ implements BaseNumberTyteXL<V0x000CA8ˣᴸ> {
|
||||
|
||||
public static int BIT_COUNT = V0x000654ˣᴸ.BIT_COUNT * T02PartBinary.LENGTH();
|
||||
private V0x000654ˣᴸ[] values = new V0x000654ˣᴸ[T02PartBinary.LENGTH()];
|
||||
|
||||
public V0x000CA8ˣᴸ() {
|
||||
this(new V0x000654ˣᴸ(), new V0x000654ˣᴸ());
|
||||
}
|
||||
|
||||
public V0x000CA8ˣᴸ(BaseIteratorOctal values) {
|
||||
this(new V0x000654ˣᴸ(values), new V0x000654ˣᴸ(values));
|
||||
}
|
||||
|
||||
private V0x000CA8ˣᴸ(V0x000654ˣᴸ valueHigh, V0x000654ˣᴸ valueLow) {
|
||||
setValue(T02PartBinary.PART_1, valueHigh);
|
||||
setValue(T02PartBinary.PART_2, valueLow);
|
||||
}
|
||||
|
||||
public V0x000654ˣᴸ getValue(T02PartBinary part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T02PartBinary part, V0x000654ˣᴸ value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V0x000CA8ˣᴸ toClone() {
|
||||
return new V0x000CA8ˣᴸ(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T02PartBinary.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillTytesByReference(BaseAppenderTyte appender) {
|
||||
T02PartBinary.PART_1.BãßVoorElk(v -> getValue(v).fillTytesByReference(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
package love.distributedrebirth.numberxd.base2t.typexl;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumberXL;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T06PartSeximal;
|
||||
|
||||
/**
|
||||
* Holds an 5040 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class V0x0013B0ˣᴸ implements BaseNumberXL<V0x0013B0ˣᴸ> {
|
||||
|
||||
public static int BIT_COUNT = V0x000348ˣᴸ.BIT_COUNT * T06PartSeximal.LENGTH();
|
||||
private V0x000348ˣᴸ[] values = new V0x000348ˣᴸ[T06PartSeximal.LENGTH()];
|
||||
|
||||
public V0x0013B0ˣᴸ() {
|
||||
for (int i=0;i<values.length;i++) {
|
||||
this.values[i] = new V0x000348ˣᴸ();
|
||||
}
|
||||
}
|
||||
|
||||
public V0x0013B0ˣᴸ(BaseIteratorOctal values) {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V0x000348ˣᴸ(values);
|
||||
}
|
||||
}
|
||||
|
||||
public V0x000348ˣᴸ getValue(T06PartSeximal part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T06PartSeximal part, V0x000348ˣᴸ value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V0x0013B0ˣᴸ toClone() {
|
||||
return new V0x0013B0ˣᴸ(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T06PartSeximal.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
package love.distributedrebirth.numberxd.base2t.typexl;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumberXL;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T60PartSexagesimal;
|
||||
|
||||
/**
|
||||
* Holds an 302400 bit value. (37800 bytes)
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class V0x049D40ˣᴸ implements BaseNumberXL<V0x049D40ˣᴸ> {
|
||||
|
||||
public static int BIT_COUNT = V0x0013B0ˣᴸ.BIT_COUNT * T60PartSexagesimal.LENGTH();
|
||||
private V0x0013B0ˣᴸ[] values = new V0x0013B0ˣᴸ[T60PartSexagesimal.LENGTH()];
|
||||
|
||||
public V0x049D40ˣᴸ() {
|
||||
for (int i=0;i<values.length;i++) {
|
||||
this.values[i] = new V0x0013B0ˣᴸ();
|
||||
}
|
||||
}
|
||||
|
||||
public V0x049D40ˣᴸ(BaseIteratorOctal values) {
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V0x0013B0ˣᴸ(values);
|
||||
}
|
||||
}
|
||||
|
||||
public V0x0013B0ˣᴸ getValue(T60PartSexagesimal part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T60PartSexagesimal part, V0x0013B0ˣᴸ value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V0x049D40ˣᴸ toClone() {
|
||||
return new V0x049D40ˣᴸ(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
T60PartSexagesimal.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<modules version="1.0"
|
||||
xmlns="http://language.x4o.org/xml/ns/modules"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://language.x4o.org/xml/ns/modules http://language.x4o.org/xml/ns/modules-1.0.xsd"
|
||||
>
|
||||
<language version="1.0">
|
||||
<eld-resource>numberxd-lang.eld</eld-resource>
|
||||
<eld-resource>numberxd-base2t.eld</eld-resource>
|
||||
</language>
|
||||
</modules>
|
||||
8
demo4d-numberxd/src/resources/META-INF/x4o-drivers.xml
Normal file
8
demo4d-numberxd/src/resources/META-INF/x4o-drivers.xml
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<drivers version="1.0"
|
||||
xmlns="http://language.x4o.org/xml/ns/drivers"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://language.x4o.org/xml/ns/drivers http://language.x4o.org/xml/ns/drivers-1.0.xsd"
|
||||
>
|
||||
<defaultDriver language="numberxd"/>
|
||||
</drivers>
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class BasePartFactoryTest {
|
||||
|
||||
@Test
|
||||
public void testSupportedBases() {
|
||||
int[] bases = BasePartFactory.INSTANCE.BãßBases();
|
||||
Assertions.assertNotNull(bases);
|
||||
Assertions.assertTrue(bases.length > 1);
|
||||
Assertions.assertTrue(bases.length < 100);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGlobalChinaKeyMap() {
|
||||
Map<String,String> global = new HashMap<>();
|
||||
for (int base:BasePartFactory.INSTANCE.BãßBases()) {
|
||||
for (BãßBȍőnPartʸᴰ<?> part:BasePartFactory.INSTANCE.BãßBuildPartsByBase(base)) {
|
||||
Assertions.assertFalse(global.containsKey(part.BȍőnChinaKey()));
|
||||
global.put(part.BȍőnChinaKey(), part.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
Assertions.assertTrue(global.size() > 1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGlobalChinaValueMap() {
|
||||
Map<String,String> global = new HashMap<>();
|
||||
for (int base:BasePartFactory.INSTANCE.BãßBases()) {
|
||||
for (BãßBȍőnPartʸᴰ<?> part:BasePartFactory.INSTANCE.BãßBuildPartsByBase(base)) {
|
||||
Assertions.assertFalse(global.containsKey(part.BȍőnChinaValue()));
|
||||
global.put(part.BȍőnChinaValue(), part.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
Assertions.assertTrue(global.size() > 1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGlobalToneMap() {
|
||||
boolean duplicate = false;
|
||||
Map<String,String> global = new HashMap<>();
|
||||
for (int base:BasePartFactory.INSTANCE.BãßBases()) {
|
||||
for (BãßBȍőnPartʸᴰ<?> part:BasePartFactory.INSTANCE.BãßBuildPartsByBase(base)) {
|
||||
if (global.containsKey(part.BȍőnIdentifierTone())) {
|
||||
duplicate = true;
|
||||
break;
|
||||
}
|
||||
global.put(part.BȍőnIdentifierTone(), part.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
Assertions.assertTrue(global.size() > 1);
|
||||
Assertions.assertTrue(duplicate);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T02PartBinary;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T02PartBinaryTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T02PartBinary value:T02PartBinary.values()) {
|
||||
Assertions.assertNotNull(value.BȍőnIdentifierTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T02PartBinary.PART_1, T02PartBinary.PART_1.BãßValueOfTone("˧"));
|
||||
Assertions.assertEquals(T02PartBinary.PART_2, T02PartBinary.PART_1.BãßValueOfTone("꜔"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T02PartBinary.PART_1, T02PartBinary.PART_1.BãßValueOfChina("低"));
|
||||
Assertions.assertEquals(T02PartBinary.PART_2, T02PartBinary.PART_1.BãßValueOfChina("高"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T03PartTrit;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T03PartTritTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T03PartTrit value:T03PartTrit.values()) {
|
||||
Assertions.assertNotNull(value.BȍőnIdentifierTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T03PartTrit.PART_1, T03PartTrit.PART_1.BãßValueOfTone("˦"));
|
||||
Assertions.assertEquals(T03PartTrit.PART_2, T03PartTrit.PART_1.BãßValueOfTone("˧"));
|
||||
Assertions.assertEquals(T03PartTrit.PART_3, T03PartTrit.PART_1.BãßValueOfTone("˨"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T03PartTrit.PART_1, T03PartTrit.PART_1.BãßValueOfChina("一"));
|
||||
Assertions.assertEquals(T03PartTrit.PART_2, T03PartTrit.PART_1.BãßValueOfChina("二"));
|
||||
Assertions.assertEquals(T03PartTrit.PART_3, T03PartTrit.PART_1.BãßValueOfChina("三"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T04PartQuad;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T04PartQuadTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T04PartQuad value:T04PartQuad.values()) {
|
||||
Assertions.assertNotNull(value.BȍőnIdentifierTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
Assertions.assertNotNull(value.BȍőnAlt1Value());
|
||||
Assertions.assertNotNull(value.BãßAlt1Name());
|
||||
Assertions.assertNotNull(value.BãßAlt1Website());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testVolgende() {
|
||||
Assertions.assertEquals(T04PartQuad.PART_1, T04PartQuad.PART_4.BȍőnVolgende());
|
||||
Assertions.assertEquals(T04PartQuad.PART_2, T04PartQuad.PART_1.BȍőnVolgende());
|
||||
Assertions.assertEquals(T04PartQuad.PART_3, T04PartQuad.PART_2.BȍőnVolgende());
|
||||
Assertions.assertEquals(T04PartQuad.PART_4, T04PartQuad.PART_3.BȍőnVolgende());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testVorige() {
|
||||
Assertions.assertEquals(T04PartQuad.PART_1, T04PartQuad.PART_2.BȍőnVorige());
|
||||
Assertions.assertEquals(T04PartQuad.PART_2, T04PartQuad.PART_3.BȍőnVorige());
|
||||
Assertions.assertEquals(T04PartQuad.PART_3, T04PartQuad.PART_4.BȍőnVorige());
|
||||
Assertions.assertEquals(T04PartQuad.PART_4, T04PartQuad.PART_1.BȍőnVorige());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T04PartQuad.PART_1, T04PartQuad.PART_1.BãßValueOfTone("˥"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_2, T04PartQuad.PART_1.BãßValueOfTone("꜒"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_3, T04PartQuad.PART_1.BãßValueOfTone("꜖"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_4, T04PartQuad.PART_1.BãßValueOfTone("˩"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T04PartQuad.PART_1, T04PartQuad.PART_1.BãßValueOfChina("北"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_2, T04PartQuad.PART_1.BãßValueOfChina("東"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_3, T04PartQuad.PART_1.BãßValueOfChina("西"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_4, T04PartQuad.PART_1.BãßValueOfChina("南"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T05PartPental;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T05PartPentalTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T05PartPental value:T05PartPental.values()) {
|
||||
Assertions.assertNotNull(value.BȍőnIdentifierTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T05PartPental.PART_1, T05PartPental.PART_1.BãßValueOfTone("˥"));
|
||||
Assertions.assertEquals(T05PartPental.PART_2, T05PartPental.PART_1.BãßValueOfTone("˦"));
|
||||
Assertions.assertEquals(T05PartPental.PART_3, T05PartPental.PART_1.BãßValueOfTone("˧"));
|
||||
Assertions.assertEquals(T05PartPental.PART_4, T05PartPental.PART_1.BãßValueOfTone("˨"));
|
||||
Assertions.assertEquals(T05PartPental.PART_5, T05PartPental.PART_1.BãßValueOfTone("˩"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T05PartPental.PART_1, T05PartPental.PART_1.BãßValueOfChina("火"));
|
||||
Assertions.assertEquals(T05PartPental.PART_2, T05PartPental.PART_1.BãßValueOfChina("水"));
|
||||
Assertions.assertEquals(T05PartPental.PART_3, T05PartPental.PART_1.BãßValueOfChina("木"));
|
||||
Assertions.assertEquals(T05PartPental.PART_4, T05PartPental.PART_1.BãßValueOfChina("金"));
|
||||
Assertions.assertEquals(T05PartPental.PART_5, T05PartPental.PART_1.BãßValueOfChina("土"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T06PartSeximal;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T06PartSeximalTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T06PartSeximal value:T06PartSeximal.values()) {
|
||||
Assertions.assertNotNull(value.BȍőnIdentifierTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
Assertions.assertNotNull(value.BȍőnAlt1Value());
|
||||
Assertions.assertNotNull(value.BãßAlt1Name());
|
||||
Assertions.assertNotNull(value.BãßAlt1Website());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T06PartSeximal.PART_1, T06PartSeximal.PART_1.BãßValueOfTone("˦"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_2, T06PartSeximal.PART_1.BãßValueOfTone("˨"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_5, T06PartSeximal.PART_1.BãßValueOfTone("꜊"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_6, T06PartSeximal.PART_1.BãßValueOfTone("꜏"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T06PartSeximal.PART_1, T06PartSeximal.PART_1.BãßValueOfChina("四"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_2, T06PartSeximal.PART_1.BãßValueOfChina("五"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_5, T06PartSeximal.PART_1.BãßValueOfChina("八"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_6, T06PartSeximal.PART_1.BãßValueOfChina("九"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T07PartPlanIt;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T07PartPlanItTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T07PartPlanIt value:T07PartPlanIt.values()) {
|
||||
Assertions.assertNotNull(value.BȍőnIdentifierTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
Assertions.assertNotNull(value.BȍőnAlt1Value());
|
||||
Assertions.assertNotNull(value.BãßAlt1Name());
|
||||
Assertions.assertNotNull(value.BãßAlt1Website());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_1, T07PartPlanIt.PART_1.BãßValueOfTone("˥"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_2, T07PartPlanIt.PART_1.BãßValueOfTone("꜉"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_6, T07PartPlanIt.PART_1.BãßValueOfTone("꜐"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_7, T07PartPlanIt.PART_1.BãßValueOfTone("˩"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_1, T07PartPlanIt.PART_1.BãßValueOfChina("♎︎"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_2, T07PartPlanIt.PART_1.BãßValueOfChina("♏︎"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_6, T07PartPlanIt.PART_1.BãßValueOfChina("♑︎"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_7, T07PartPlanIt.PART_1.BãßValueOfChina("♈︎"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T08PartOctalTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T08PartOctal value:T08PartOctal.values()) {
|
||||
Assertions.assertNotNull(value.BȍőnIdentifierTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T08PartOctal.PART_1, T08PartOctal.PART_1.BãßValueOfTone("˥"));
|
||||
Assertions.assertEquals(T08PartOctal.PART_2, T08PartOctal.PART_1.BãßValueOfTone("˩"));
|
||||
Assertions.assertEquals(T08PartOctal.PART_7, T08PartOctal.PART_1.BãßValueOfTone("꜍"));
|
||||
Assertions.assertEquals(T08PartOctal.PART_8, T08PartOctal.PART_1.BãßValueOfTone("꜑"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T08PartOctal.PART_1, T08PartOctal.PART_1.BãßValueOfChina("心"));
|
||||
Assertions.assertEquals(T08PartOctal.PART_2, T08PartOctal.PART_1.BãßValueOfChina("頭"));
|
||||
Assertions.assertEquals(T08PartOctal.PART_7, T08PartOctal.PART_1.BãßValueOfChina("肢"));
|
||||
Assertions.assertEquals(T08PartOctal.PART_8, T08PartOctal.PART_1.BãßValueOfChina("腳"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T10PartDecimal;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T10PartDecimalTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T10PartDecimal value:T10PartDecimal.values()) {
|
||||
Assertions.assertNotNull(value.BȍőnIdentifierTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T10PartDecimal.PART_1, T10PartDecimal.PART_1.BãßValueOfTone("˥"));
|
||||
Assertions.assertEquals(T10PartDecimal.PART_2, T10PartDecimal.PART_1.BãßValueOfTone("˦"));
|
||||
Assertions.assertEquals(T10PartDecimal.PART_9, T10PartDecimal.PART_1.BãßValueOfTone("꜕"));
|
||||
Assertions.assertEquals(T10PartDecimal.PART_10, T10PartDecimal.PART_1.BãßValueOfTone("꜖"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T10PartDecimal.PART_1, T10PartDecimal.PART_1.BãßValueOfChina("零"));
|
||||
Assertions.assertEquals(T10PartDecimal.PART_2, T10PartDecimal.PART_1.BãßValueOfChina("壹"));
|
||||
Assertions.assertEquals(T10PartDecimal.PART_9, T10PartDecimal.PART_1.BãßValueOfChina("捌"));
|
||||
Assertions.assertEquals(T10PartDecimal.PART_10, T10PartDecimal.PART_1.BãßValueOfChina("玖"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T11PartUndecimal;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T11PartUndecimalTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T11PartUndecimal value:T11PartUndecimal.values()) {
|
||||
Assertions.assertNotNull(value.BȍőnIdentifierTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T11PartUndecimal.PART_1, T11PartUndecimal.PART_1.BãßValueOfTone("˥"));
|
||||
Assertions.assertEquals(T11PartUndecimal.PART_2, T11PartUndecimal.PART_1.BãßValueOfTone("꜈"));
|
||||
Assertions.assertEquals(T11PartUndecimal.PART_10, T11PartUndecimal.PART_1.BãßValueOfTone("꜐"));
|
||||
Assertions.assertEquals(T11PartUndecimal.PART_11, T11PartUndecimal.PART_1.BãßValueOfTone("˩"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T11PartUndecimal.PART_1, T11PartUndecimal.PART_1.BãßValueOfChina("走"));
|
||||
Assertions.assertEquals(T11PartUndecimal.PART_2, T11PartUndecimal.PART_1.BãßValueOfChina("跑"));
|
||||
Assertions.assertEquals(T11PartUndecimal.PART_10, T11PartUndecimal.PART_1.BãßValueOfChina("春"));
|
||||
Assertions.assertEquals(T11PartUndecimal.PART_11, T11PartUndecimal.PART_1.BãßValueOfChina("耦"));
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue