Rename project layout
This commit is contained in:
parent
9a4498d8c2
commit
1ddfc28a18
192 changed files with 14 additions and 16 deletions
8
lib-numberxd/build.gradle
Normal file
8
lib-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ậlMatrix1<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> implements BaseGetậlMatrix1<T,V> {
|
||||
|
||||
protected int matrix1;
|
||||
|
||||
@Override
|
||||
public void setMatrix1(int matrix1) {
|
||||
this.matrix1 = matrix1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix1() {
|
||||
return matrix1;
|
||||
}
|
||||
}
|
||||
|
|
@ -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ậlMatrix2<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlMatrix1<T,V> implements BaseGetậlMatrix2<T,V> {
|
||||
|
||||
protected int matrix2;
|
||||
|
||||
@Override
|
||||
public void setMatrix2(int matrix2) {
|
||||
this.matrix2 = matrix2;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix2() {
|
||||
return matrix2;
|
||||
}
|
||||
}
|
||||
|
|
@ -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ậlMatrix3<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlMatrix2<T,V> implements BaseGetậlMatrix3<T,V> {
|
||||
|
||||
protected int matrix3;
|
||||
|
||||
@Override
|
||||
public void setMatrix3(int matrix3) {
|
||||
this.matrix3 = matrix3;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix3() {
|
||||
return matrix3;
|
||||
}
|
||||
}
|
||||
|
|
@ -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ậlMatrix4<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlMatrix3<T,V> implements BaseGetậlMatrix4<T,V> {
|
||||
|
||||
protected int matrix4;
|
||||
|
||||
@Override
|
||||
public void setMatrix4(int matrix4) {
|
||||
this.matrix4 = matrix4;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix4() {
|
||||
return matrix4;
|
||||
}
|
||||
}
|
||||
|
|
@ -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ậlMatrix2<T,V009Tyte> {
|
||||
|
||||
private V144Tocta[] values;
|
||||
private int valuesLength;
|
||||
private int fractalLevel;
|
||||
|
||||
public AbstractGroßGetậlŌṁ1ⁿᴰ(int 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ⁿᴰ(int 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(int level);
|
||||
|
||||
public V009Tyte getValue() {
|
||||
return values[matrix2].getTytePart(T16PartHex.values()[matrix1]);
|
||||
}
|
||||
|
||||
public int getFractalLevel() {
|
||||
return fractalLevel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix1Length() {
|
||||
return T16PartHex.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix2Length() {
|
||||
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ậlMatrix3<T,V009Tyte> {
|
||||
|
||||
private V144Tocta[][] values;
|
||||
private int valuesLength;
|
||||
private int fractalLevel;
|
||||
|
||||
public AbstractGroßGetậlŌṁ6ˢᴰ(int 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ˢᴰ(int 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(int level);
|
||||
|
||||
public V009Tyte getValue() {
|
||||
return values[matrix2][matrix3].getTytePart(T16PartHex.values()[matrix1]);
|
||||
}
|
||||
|
||||
public int getFractalLevel() {
|
||||
return fractalLevel;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix1Length() {
|
||||
return T16PartHex.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix2Length() {
|
||||
return T12PartUncial.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix3Length() {
|
||||
return valuesLength;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
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();
|
||||
|
||||
default T toClone() {
|
||||
return toClone(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
T toClone(BaseIteratorOctal values);
|
||||
|
||||
BaseIteratorOctal iteratorOctalsByClone();
|
||||
}
|
||||
|
|
@ -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ậlMatrix1<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậl<T,V> {
|
||||
|
||||
void setMatrix1(int valueIndex0);
|
||||
|
||||
int getMatrix1();
|
||||
|
||||
int getMatrix1Length();
|
||||
}
|
||||
|
|
@ -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ậlMatrix2<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlMatrix1<T,V> {
|
||||
|
||||
void setMatrix2(int valueIndex1);
|
||||
|
||||
int getMatrix2();
|
||||
|
||||
int getMatrix2Length();
|
||||
}
|
||||
|
|
@ -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ậlMatrix3<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlMatrix2<T,V> {
|
||||
|
||||
void setMatrix3(int valueIndex1);
|
||||
|
||||
int getMatrix3();
|
||||
|
||||
int getMatrix3Length();
|
||||
}
|
||||
|
|
@ -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ậlMatrix4<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlMatrix3<T,V> {
|
||||
|
||||
void setMatrix4(int valueIndex1);
|
||||
|
||||
int getMatrix4();
|
||||
|
||||
int getMatrix4Length();
|
||||
}
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
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ậlMatrix1<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()[matrix1]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix1Length() {
|
||||
return T16PartHex.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậl1ⁿᴰ toClone(BaseIteratorOctal values) {
|
||||
return new GroßGetậl1ⁿᴰ(values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
return value.iteratorOctalsByClone();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,58 @@
|
|||
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ậlMatrix2<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[matrix2].getTytePart(T16PartHex.values()[matrix1]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix1Length() {
|
||||
return T16PartHex.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix2Length() {
|
||||
return T12PartUncial.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậl6ˢᴰ toClone(BaseIteratorOctal values) {
|
||||
return new GroßGetậl6ˢᴰ(values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
cloneStack.addIterator(this.values[i].iteratorOctalsByClone());
|
||||
}
|
||||
return cloneStack;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,50 @@
|
|||
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ⁿᴰ> {
|
||||
|
||||
// 1th = 1 * V144Tocta (1)
|
||||
// 2th = 1+3 * V144Tocta (4)
|
||||
// 3th = 1+3+6 * V144Tocta (10)
|
||||
// 4th = 1+3+6+14 * V144Tocta (24)
|
||||
// etc
|
||||
|
||||
public GroßGetậlŌṁDiamond1ⁿᴰ(int level) {
|
||||
super(level);
|
||||
}
|
||||
|
||||
public GroßGetậlŌṁDiamond1ⁿᴰ(int level, BaseIteratorOctal values) {
|
||||
super(level, values);
|
||||
}
|
||||
|
||||
protected int resolveFractalLevel(int n) {
|
||||
if (n == 1) {
|
||||
return 1;
|
||||
} else {
|
||||
int result = 1 + n * resolveFractalLevel(n - 1);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậlŌṁDiamond1ⁿᴰ toClone(BaseIteratorOctal values) {
|
||||
return new GroßGetậlŌṁDiamond1ⁿᴰ(getFractalLevel(), values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int x=0;x<getMatrix1Length();x++) {
|
||||
setMatrix1(x);
|
||||
for (int y=0;y<getMatrix2Length();y++) {
|
||||
setMatrix2(y);
|
||||
cloneStack.addIterator(getValue().iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
return cloneStack;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
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ˢᴰ(int level) {
|
||||
super(level);
|
||||
}
|
||||
|
||||
public GroßGetậlŌṁDiamond6ˢᴰ(int level, BaseIteratorOctal values) {
|
||||
super(level, values);
|
||||
}
|
||||
|
||||
protected int resolveFractalLevel(int level) {
|
||||
// TODO
|
||||
return level;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậlŌṁDiamond6ˢᴰ toClone(BaseIteratorOctal values) {
|
||||
return new GroßGetậlŌṁDiamond6ˢᴰ(getFractalLevel(), values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int x=0;x<getMatrix1Length();x++) {
|
||||
setMatrix1(x);
|
||||
for (int y=0;y<getMatrix2Length();y++) {
|
||||
setMatrix2(y);
|
||||
for (int z=0;z<getMatrix2Length();z++) {
|
||||
setMatrix2(z);
|
||||
cloneStack.addIterator(getValue().iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
}
|
||||
return cloneStack;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,45 @@
|
|||
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ⁿᴰ(int level) {
|
||||
super(level);
|
||||
}
|
||||
|
||||
public GroßGetậlŌṁHyperStàr1ⁿᴰ(int level, BaseIteratorOctal values) {
|
||||
super(level, values);
|
||||
}
|
||||
|
||||
protected int resolveFractalLevel(int level) {
|
||||
// TODO
|
||||
return level;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậlŌṁHyperStàr1ⁿᴰ toClone(BaseIteratorOctal values) {
|
||||
return new GroßGetậlŌṁHyperStàr1ⁿᴰ(getFractalLevel(), values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int x=0;x<getMatrix1Length();x++) {
|
||||
setMatrix1(x);
|
||||
for (int y=0;y<getMatrix2Length();y++) {
|
||||
setMatrix2(y);
|
||||
cloneStack.addIterator(getValue().iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
return cloneStack;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,48 @@
|
|||
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ˢᴰ(int level) {
|
||||
super(level);
|
||||
}
|
||||
|
||||
public GroßGetậlŌṁHyperStàr6ˢᴰ(int level, BaseIteratorOctal values) {
|
||||
super(level, values);
|
||||
}
|
||||
|
||||
protected int resolveFractalLevel(int level) {
|
||||
// TODO
|
||||
return level;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroßGetậlŌṁHyperStàr6ˢᴰ toClone(BaseIteratorOctal values) {
|
||||
return new GroßGetậlŌṁHyperStàr6ˢᴰ(getFractalLevel(), values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int x=0;x<getMatrix1Length();x++) {
|
||||
setMatrix1(x);
|
||||
for (int y=0;y<getMatrix2Length();y++) {
|
||||
setMatrix2(y);
|
||||
for (int z=0;z<getMatrix2Length();z++) {
|
||||
setMatrix2(z);
|
||||
cloneStack.addIterator(getValue().iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
}
|
||||
return cloneStack;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,185 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
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ậlMatrix1<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(BaseIteratorOctal values) {
|
||||
this (new V036Teger(values));
|
||||
}
|
||||
|
||||
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 getMatrix1Length() {
|
||||
return T04PartQuad.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public V009Tyte getValue() {
|
||||
return value.getTytePart(T04PartQuad.values()[matrix1]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Gê̄ldGetậl toClone(BaseIteratorOctal values) {
|
||||
return new Gê̄ldGetậl(values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
return value.iteratorOctalsByClone();
|
||||
}
|
||||
}
|
||||
|
|
@ -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).ordinalOf(T08PartOctal.PART_1);
|
||||
int value1 = tyte.getValue(T03PartTrit.PART_2).ordinalOf(T08PartOctal.PART_2);
|
||||
int value2 = tyte.getValue(T03PartTrit.PART_3).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,49 @@
|
|||
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ậlMatrix1<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[matrix1];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix1Length() {
|
||||
return T08PartOctal.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public KlompGetậl4ˢᴰ toClone(BaseIteratorOctal values) {
|
||||
return new KlompGetậl4ˢᴰ(values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
cloneStack.addIterator(this.values[i].iteratorOctalsByClone());
|
||||
}
|
||||
return cloneStack;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,80 @@
|
|||
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ậlMatrix2<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[matrix1][matrix2];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix1Length() {
|
||||
return T08PartOctal.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix2Length() {
|
||||
return kaasCuts;
|
||||
}
|
||||
|
||||
@Override
|
||||
public KlompÅtŌṁKāassGetậl4ˢᴰ toClone(BaseIteratorOctal values) {
|
||||
return new KlompÅtŌṁKāassGetậl4ˢᴰ(getKaasCuts(), values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int x=0;x<getMatrix1Length();x++) {
|
||||
setMatrix1(x);
|
||||
for (int y=0;y<getMatrix2Length();y++) {
|
||||
setMatrix2(y);
|
||||
cloneStack.addIterator(getValue().iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
return cloneStack;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,52 @@
|
|||
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ậlMatrix1<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[matrix1];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix1Length() {
|
||||
return T04PartQuad.LENGTH();
|
||||
}
|
||||
|
||||
@Override
|
||||
public WaveGetậl1ᑫᴰ toClone(BaseIteratorOctal values) {
|
||||
return new WaveGetậl1ᑫᴰ(values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
cloneStack.addIterator(this.values[i].iteratorOctalsByClone());
|
||||
}
|
||||
return cloneStack;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
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(BaseIteratorOctal values) {
|
||||
return new WaveGetậl1ⁿᴰ(values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
return value.iteratorOctalsByClone();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,54 @@
|
|||
package love.distributedrebirth.numberxd.alu;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.BaseGetậl;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.BaseNumber;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class ŌctopǔsALU {
|
||||
|
||||
public <T extends BaseGetậl<T,V>,V extends BaseNumber<V>> BaseGetậl<T,V> math(BaseGetậl<T,V> opA, BaseGetậl<T,V> opB) {
|
||||
BaseIteratorOctal bioA = opA.iteratorOctalsByClone();
|
||||
BaseIteratorOctal bioB = opB.iteratorOctalsByClone();
|
||||
BaseIteratorOctalALU bioALU = new BaseIteratorOctalALU(bioA, bioB);
|
||||
BaseGetậl<T,V> result = opA.toClone(bioALU);
|
||||
return result;
|
||||
}
|
||||
|
||||
class BaseIteratorOctalALU implements BaseIteratorOctal {
|
||||
|
||||
private final BaseIteratorOctal bioA;
|
||||
private final BaseIteratorOctal bioB;
|
||||
|
||||
public BaseIteratorOctalALU(BaseIteratorOctal bioA, BaseIteratorOctal bioB) {
|
||||
this.bioA = bioA;
|
||||
this.bioB = bioB;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean hasNext() {
|
||||
return bioA.hasNext();
|
||||
}
|
||||
|
||||
@Override
|
||||
public T08PartOctal next() {
|
||||
T08PartOctal valA = bioA.next();
|
||||
T08PartOctal valB = bioB.next();
|
||||
|
||||
int valANum = valA.BȍőnRangTelNul();
|
||||
int valBNum = valB.BȍőnRangTelNul();
|
||||
|
||||
var valResultNum = valANum + valBNum;
|
||||
|
||||
if (valResultNum > valA.BãßInstances().length) {
|
||||
valResultNum = valA.BãßInstances().length -1;
|
||||
}
|
||||
|
||||
T08PartOctal valResult = T08PartOctal.values()[valResultNum];
|
||||
|
||||
return valResult;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -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,161 @@
|
|||
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ȍőnClassInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnPackageInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.DefaultEnumInstanceᴶᴹˣ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.GuageCounterᴶᴹˣ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.MBeanStoreKeyᴶᴹˣ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V072Tong;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "Base2Terminator", purpose = "Terminate from and to classical bytes.")
|
||||
@BãßBȍőnPackageInfoʸᴰ(name = "love.distributedrebirth.numberxd")
|
||||
public enum Base2Terminator implements DefaultEnumInstanceᴶᴹˣ<Base2Terminator,MBeanStoreKeyᴶᴹˣ> {
|
||||
|
||||
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;
|
||||
private final GuageCounterᴶᴹˣ readV072TongInvokes;
|
||||
private final GuageCounterᴶᴹˣ readV072TongTypeReads;
|
||||
private final GuageCounterᴶᴹˣ readV072TongByteWrites;
|
||||
private final GuageCounterᴶᴹˣ readV144ToctaInvokes;
|
||||
private final GuageCounterᴶᴹˣ readV144ToctaTypeReads;
|
||||
private final GuageCounterᴶᴹˣ readV144ToctaByteWrites;
|
||||
private final GuageCounterᴶᴹˣ writeV072TongInvokes;
|
||||
private final GuageCounterᴶᴹˣ writeV072TongByteReads;
|
||||
private final GuageCounterᴶᴹˣ writeV072TongTypeWrites;
|
||||
private final GuageCounterᴶᴹˣ writeV144ToctaInvokes;
|
||||
private final GuageCounterᴶᴹˣ writeV144ToctaBytesReads;
|
||||
private final GuageCounterᴶᴹˣ writeV144ToctaTypeWrites;
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<MBeanStoreKeyᴶᴹˣ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<MBeanStoreKeyᴶᴹˣ> GET_BBC() { return BBC; }
|
||||
|
||||
private Base2Terminator() {
|
||||
BBC.BOON_INIT(this);
|
||||
BȍőnJmxInit(MBeanStoreKeyᴶᴹˣ.JMX);
|
||||
readV072TongInvokes = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "readV072TongInvokes");
|
||||
readV072TongTypeReads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "readV072TongTypeReads");
|
||||
readV144ToctaInvokes = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "readV144ToctaInvokes");
|
||||
readV072TongByteWrites = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "readV072TongByteWrites");
|
||||
readV144ToctaTypeReads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "readV144ToctaTypeReads");
|
||||
readV144ToctaByteWrites = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "readV144ToctaByteWrites");
|
||||
writeV072TongInvokes = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "writeV072TongInvokes");
|
||||
writeV072TongByteReads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "writeV072TongByteReads");
|
||||
writeV072TongTypeWrites = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "writeV072TongTypeWrites");
|
||||
writeV144ToctaInvokes = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "writeV144ToctaInvokes");
|
||||
writeV144ToctaBytesReads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "writeV144ToctaBytesReads");
|
||||
writeV144ToctaTypeWrites = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "writeV144ToctaTypeWrites");
|
||||
}
|
||||
|
||||
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;
|
||||
}
|
||||
readV072TongInvokes.increment();
|
||||
readV072TongTypeReads.increment(output.size());
|
||||
readV072TongByteWrites.increment(totalBytes);
|
||||
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;
|
||||
}
|
||||
readV144ToctaInvokes.increment();
|
||||
readV144ToctaTypeReads.increment(output.size());
|
||||
readV144ToctaByteWrites.increment(totalBytes);
|
||||
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 {
|
||||
int totalBytes = Bãß2Write(data, output);
|
||||
writeV072TongInvokes.increment();
|
||||
writeV072TongByteReads.increment(totalBytes);
|
||||
writeV072TongTypeWrites.increment(data.size());
|
||||
return totalBytes;
|
||||
|
||||
}
|
||||
|
||||
public int Bãß2WriteTocta(List<V144Tocta> data, OutputStream output) throws IOException {
|
||||
int totalBytes = Bãß2Write(data, output);
|
||||
writeV144ToctaInvokes.increment();
|
||||
writeV144ToctaBytesReads.increment(totalBytes);
|
||||
writeV144ToctaTypeWrites.increment(data.size());
|
||||
return totalBytes;
|
||||
}
|
||||
|
||||
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,52 @@
|
|||
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.");
|
||||
}
|
||||
if (stack.peek().hasNext()) {
|
||||
return stack.peek().next();
|
||||
}
|
||||
stack.pop();
|
||||
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 BaseNumberTyteˣᴸ<V extends BaseNumber<V>> extends BaseNumberˣᴸ<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 BaseNumberˣᴸ<V extends BaseNumber<V>> extends BaseNumber<V> {
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,123 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.DefaultEnumInstanceᴶᴹˣ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.GuageCounterᴶᴹˣ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.MBeanStoreKeyᴶᴹˣ;
|
||||
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.T09PartNonary;
|
||||
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ʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnPackageInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "BasePartFactory", purpose = "Factory to access the bases.")
|
||||
@BãßBȍőnPackageInfoʸᴰ(name = "love.distributedrebirth.numberxd")
|
||||
public enum BasePartFactory implements DefaultEnumInstanceᴶᴹˣ<BasePartFactory, MBeanStoreKeyᴶᴹˣ> {
|
||||
|
||||
INSTANCE;
|
||||
|
||||
private final GuageCounterᴶᴹˣ baseT02Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT03Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT04Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT05Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT06Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT07Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT08Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT09Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT10Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT11Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT12Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT16Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT20Reads;
|
||||
private final GuageCounterᴶᴹˣ baseT60Reads;
|
||||
private static final int[] SUPPORTED_BASES = {2,3,4,5,6,7,8,9,10,11,12,16,20,60};
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<MBeanStoreKeyᴶᴹˣ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<MBeanStoreKeyᴶᴹˣ> GET_BBC() { return BBC; }
|
||||
|
||||
private BasePartFactory() {
|
||||
BBC.BOON_INIT(this);
|
||||
BȍőnJmxInit(MBeanStoreKeyᴶᴹˣ.JMX);
|
||||
baseT02Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT02Reads");
|
||||
baseT03Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT03Reads");
|
||||
baseT04Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT04Reads");
|
||||
baseT05Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT05Reads");
|
||||
baseT06Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT06Reads");
|
||||
baseT07Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT07Reads");
|
||||
baseT08Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT08Reads");
|
||||
baseT09Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT09Reads");
|
||||
baseT10Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT10Reads");
|
||||
baseT11Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT11Reads");
|
||||
baseT12Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT12Reads");
|
||||
baseT16Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT16Reads");
|
||||
baseT20Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT20Reads");
|
||||
baseT60Reads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "baseT60Reads");
|
||||
}
|
||||
|
||||
public int[] BãßBases() {
|
||||
return SUPPORTED_BASES;
|
||||
}
|
||||
|
||||
public BãßBȍőnPartʸᴰ<?>[] BãßBuildPartsByBase(int base) {
|
||||
switch (base) {
|
||||
case 2:
|
||||
baseT02Reads.increment();
|
||||
return T02PartBinary.values();
|
||||
case 3:
|
||||
baseT03Reads.increment();
|
||||
return T03PartTrit.values();
|
||||
case 4:
|
||||
baseT04Reads.increment();
|
||||
return T04PartQuad.values();
|
||||
case 5:
|
||||
baseT05Reads.increment();
|
||||
return T05PartPental.values();
|
||||
case 6:
|
||||
baseT06Reads.increment();
|
||||
return T06PartSeximal.values();
|
||||
case 7:
|
||||
baseT07Reads.increment();
|
||||
return T07PartPlanIt.values();
|
||||
case 8:
|
||||
baseT08Reads.increment();
|
||||
return T08PartOctal.values();
|
||||
case 9:
|
||||
baseT09Reads.increment();
|
||||
return T09PartNonary.values();
|
||||
case 10:
|
||||
baseT10Reads.increment();
|
||||
return T10PartDecimal.values();
|
||||
case 11:
|
||||
baseT11Reads.increment();
|
||||
return T11PartUndecimal.values();
|
||||
case 12:
|
||||
baseT12Reads.increment();
|
||||
return T12PartUncial.values();
|
||||
case 16:
|
||||
baseT16Reads.increment();
|
||||
return T16PartHex.values();
|
||||
case 20:
|
||||
baseT20Reads.increment();
|
||||
return T20PartScore.values();
|
||||
case 60:
|
||||
baseT60Reads.increment();
|
||||
return T60PartSexagesimal.values();
|
||||
default:
|
||||
throw new IllegalArgumentException("Unsupported base: "+base);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -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ʸᴰ {
|
||||
|
||||
DIAL_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,67 @@
|
|||
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ȍőnCoffinOpenʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinStoreʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.DefaultEnumSetʸᴰ;
|
||||
import love.distributedrebirth.numberxd.glyph.BaseGlyphSet;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnInitMethodʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BãßBȍőnPartʸᴰ<T extends BãßBȍőnPartʸᴰ<T>> extends DefaultEnumSetʸᴰ<T>, BãßBȍőnCoffinStoreʸᴰ<BãßBȍőnPartKeyʸᴰ> {
|
||||
|
||||
@BãßBȍőnInitMethodʸᴰ
|
||||
default void initMapTone(BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC) {
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_TONE);
|
||||
}
|
||||
|
||||
@BãßBȍőnInitMethodʸᴰ
|
||||
default void initMapChina(BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> BBC) {
|
||||
BBC.PUT_MAP(BãßBȍőnPartKeyʸᴰ.MAP_CHINA);
|
||||
}
|
||||
|
||||
default String BȍőnDialTone() {
|
||||
return GET_BBC().GET_STR(BãßBȍőnPartKeyʸᴰ.DIAL_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);
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
default T BãßValueOfDialTone(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ȍőnDialTone(), v -> v)));
|
||||
}
|
||||
return (T) mapTone.get(identifierTone);
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
default T BãßValueOfChinaKey(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);
|
||||
}
|
||||
|
||||
default String BȍőnPrintGlyphSetNumber10(BaseGlyphSet glyphSet) {
|
||||
return glyphSet.BȍőnPrintGlyphSetNumber10(BȍőnRangTelNul(), BãßInstances().length);
|
||||
}
|
||||
|
||||
default String BȍőnPrintGlyphSetNumber16(BaseGlyphSet glyphSet) {
|
||||
return glyphSet.BȍőnPrintGlyphSetNumber16(BȍőnRangTelNul(), BãßInstances().length);
|
||||
}
|
||||
|
||||
default String BȍőnPrintGlyphSetNumber36(BaseGlyphSet glyphSet) {
|
||||
return glyphSet.BȍőnPrintGlyphSetNumber36(BȍőnRangTelNul(), BãßInstances().length);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
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 (low/high).")
|
||||
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 dialTone, String chinaKey, String chinaValue) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.BOON_INIT(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
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 (number123).")
|
||||
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 dialTone, String chinaKey, String chinaValue) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.BOON_INIT(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -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 = "T04PartQuad", purpose = "The distribution by 4 (directions).")
|
||||
@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 dialTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
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.BOON_INIT(this);
|
||||
}
|
||||
|
||||
public T02PartBinary splitPartBinary(T02PartBinary part) {
|
||||
return T02PartBinary.values()[(ordinal() >> part.ordinal()) & 1];
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
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 (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 dialTone, String chinaKey, String chinaValue, String alt1Value, String alt2Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
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.BOON_INIT(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
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 (numbers4/9).")
|
||||
@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 dialTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
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.BOON_INIT(this);
|
||||
}
|
||||
|
||||
public T02PartBinary splitPartBinary() {
|
||||
return T02PartBinary.values()[ordinal() & 1];
|
||||
}
|
||||
|
||||
public T03PartTrit splitPartTrit() {
|
||||
return T03PartTrit.values()[ordinal() >> 1];
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
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 (planets).")
|
||||
@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 dialTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
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.BOON_INIT(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -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 = "T08PartOctal", purpose = "The distribution by 8 (human part).")
|
||||
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 dialTone, String chinaKey, String chinaValue, int shiftBits) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
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.BOON_INIT(this);
|
||||
}
|
||||
|
||||
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,33 @@
|
|||
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 = "T09PartNonary", purpose = "The distribution by 9 (colors).")
|
||||
public enum T09PartNonary implements BãßBȍőnPartʸᴰ<T09PartNonary> {
|
||||
|
||||
PART_1 ("˦","藍","blue"),
|
||||
PART_2 ("˨","皓","white"),
|
||||
PART_3 ("꜓","紅","red"),
|
||||
PART_4 ("꜕","橙","orange"),
|
||||
PART_5 ("꜉","綠","green"),
|
||||
PART_6 ("꜋","黃","yellow"),
|
||||
PART_7 ("꜍","褐","brown"),
|
||||
PART_8 ("꜏","黑","black"),
|
||||
PART_9 ("꜑","紺","purple"),
|
||||
;
|
||||
|
||||
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 T09PartNonary(String dialTone, String chinaKey, String chinaValue) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.BOON_INIT(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -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 = "T10PartDecimal", purpose = "The distribution by 10 (finance numbers).")
|
||||
@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 dialTone, String chinaKey, String chinaValue, String alt1Value, String alt2Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
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.BOON_INIT(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
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 (human activity).")
|
||||
@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 dialTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
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.BOON_INIT(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -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 = "T12PartUncial", purpose = "The distribution by 12 (emperor).")
|
||||
@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 dialTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
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.BOON_INIT(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
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 (elements).")
|
||||
@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 dialTone, String chinaKey, String chinaValue, String alt1Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
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.BOON_INIT(this);
|
||||
}
|
||||
|
||||
public T02PartBinary splitPartBinary(T04PartQuad part) {
|
||||
return T02PartBinary.values()[(ordinal() >> part.ordinal()) & 1];
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
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 (SI prefixes).")
|
||||
@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 dialTone, String chinaKey, String chinaValue,
|
||||
String alt1Value, String alt2Value, String alt3Value, String alt4Value) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
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.BOON_INIT(this);
|
||||
}
|
||||
|
||||
public T20PartScore BãßValueOfOpenLC(String openLCKey) {
|
||||
return OPENLC_MAP.get(openLCKey);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,84 @@
|
|||
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 (human food).")
|
||||
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("꜒˩","餅","cake"),
|
||||
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 dialTone, String chinaKey, String chinaValue) {
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, dialTone);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, chinaKey);
|
||||
BBC.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, chinaValue);
|
||||
BBC.BOON_INIT(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,101 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part.warp;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
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.bassboonyd.BãßBȍőnPackageInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.BooleanAttributeᴶᴹˣ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.MBeanStoreKeyᴶᴹˣ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.DefaultEnumInstanceᴶᴹˣ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.GuageCounterᴶᴹˣ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.StringAttributeᴶᴹˣ;
|
||||
import love.distributedrebirth.numberxd.base2t.BasePartFactory;
|
||||
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartKeyʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnClassInfoʸᴰ(name = "TOSWarpCore", purpose = "The warpcore writer and armor manager.")
|
||||
@BãßBȍőnPackageInfoʸᴰ(name = "love.distributedrebirth.numberxd")
|
||||
public enum TOSWarpCore implements DefaultEnumInstanceᴶᴹˣ<TOSWarpCore,MBeanStoreKeyᴶᴹˣ> {
|
||||
|
||||
INSTANCE;
|
||||
|
||||
private final BooleanAttributeᴶᴹˣ armedWarpCipherLock;
|
||||
private final StringAttributeᴶᴹˣ armedWarpWaterName;
|
||||
private final StringAttributeᴶᴹˣ armedWarpWaterDesc;
|
||||
private final GuageCounterᴶᴹˣ warpCoreReads;
|
||||
private final GuageCounterᴶᴹˣ warpCoreWrites;
|
||||
private final BãßBȍőnCoffinOpenʸᴰ<MBeanStoreKeyᴶᴹˣ> BBC = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
public BãßBȍőnCoffinʸᴰ<MBeanStoreKeyᴶᴹˣ> GET_BBC() { return BBC; }
|
||||
|
||||
private TOSWarpCore() {
|
||||
BBC.BOON_INIT(this);
|
||||
BȍőnJmxInit(MBeanStoreKeyᴶᴹˣ.JMX);
|
||||
warpCoreReads = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "warpCoreReads", "The amount of warpcore reads.");
|
||||
warpCoreWrites = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "warpCoreWrites", "The amount of warpcore writes.");
|
||||
armedWarpWaterName = BȍőnJmxInitStringAttribute(MBeanStoreKeyᴶᴹˣ.JMX, "armedWarpWaterName", "The armed water cipher name.");
|
||||
armedWarpWaterName.setValueString("default");
|
||||
armedWarpWaterDesc = BȍőnJmxInitStringAttribute(MBeanStoreKeyᴶᴹˣ.JMX, "armedWarpWaterDesc", "The armed water cipher description.");
|
||||
armedWarpWaterDesc.setValueString("Current active cipher.");
|
||||
armedWarpCipherLock = BȍőnJmxInitBooleanAttribute(MBeanStoreKeyᴶᴹˣ.JMX, "armedWarpCipherLock", "Is the water cipher locked.");
|
||||
armedWarpCipherLock.setValueBoolean(false);
|
||||
}
|
||||
|
||||
public void BãßLockWarpCipher() {
|
||||
armedWarpCipherLock.setValueBoolean(true);
|
||||
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 WaterBucket BãßCurrentWarpCore() {
|
||||
warpCoreReads.increment();
|
||||
WaterCipher warpCipher = new WaterCipher();
|
||||
warpCipher.setName(armedWarpWaterName.getValueString());
|
||||
warpCipher.setDescription(armedWarpWaterDesc.getValueString());
|
||||
for (int base:BasePartFactory.INSTANCE.BãßBases()) {
|
||||
WaterCipherHeart heart = new WaterCipherHeart();
|
||||
BãßBȍőnPartʸᴰ<?>[] bases = BasePartFactory.INSTANCE.BãßBuildPartsByBase(base);
|
||||
heart.setBass(bases[0].BãßInstances().length);
|
||||
for (BãßBȍőnPartʸᴰ<?> part:bases) {
|
||||
WaterCipherHeartTone tone = new WaterCipherHeartTone();
|
||||
tone.setPart(part.BȍőnNaam());
|
||||
tone.setDialTone(part.BȍőnDialTone());
|
||||
tone.setChinaKey(part.BȍőnChinaKey());
|
||||
tone.setChinaValue(part.BȍőnChinaValue());
|
||||
heart.addHeartTone(tone);
|
||||
}
|
||||
warpCipher.getCipherHearts().add(heart);
|
||||
}
|
||||
WaterBucket bucket = new WaterBucket();
|
||||
bucket.fillWater(warpCipher);
|
||||
return bucket;
|
||||
}
|
||||
|
||||
public void BãßArmWarpCore(WaterBucket warpBucket) {
|
||||
warpCoreWrites.increment();
|
||||
armedWarpWaterName.setValueString(warpBucket.theWater().getName());
|
||||
armedWarpWaterDesc.setValueString(warpBucket.theWater().getDescription());
|
||||
for (WaterCipherHeart heart:warpBucket.theWater().getCipherHearts()) {
|
||||
BãßBȍőnPartʸᴰ<?>[] bases = BasePartFactory.INSTANCE.BãßBuildPartsByBase(heart.getBass());
|
||||
Map<String, BãßBȍőnPartʸᴰ<?>> baseParts = new HashMap<>();
|
||||
for (BãßBȍőnPartʸᴰ<?> base:bases) {
|
||||
baseParts.put(base.BȍőnNaam(), base);
|
||||
}
|
||||
for (WaterCipherHeartTone tone:heart.getHeartTones()) {
|
||||
BãßBȍőnPartʸᴰ<?> bassTone = baseParts.get(tone.getPart());
|
||||
@SuppressWarnings("unchecked")
|
||||
BãßBȍőnCoffinOpenʸᴰ<BãßBȍőnPartKeyʸᴰ> coffin = BãßBȍőnCoffinOpenʸᴰ.class.cast(bassTone.GET_BBC());
|
||||
coffin.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.DIAL_TONE, tone.getDialTone());
|
||||
coffin.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_KEY, tone.getChinaKey());
|
||||
coffin.PUT_OBJ(BãßBȍőnPartKeyʸᴰ.CHINA_VALUE, tone.getChinaValue());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part.warp;
|
||||
|
||||
import org.x4o.xml.X4ODriver;
|
||||
import org.x4o.xml.X4ODriverManager;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class TOSWarpCoreDriver extends X4ODriver<WaterBucket> {
|
||||
|
||||
static final public String LANGUAGE_NAME = "warpcore";
|
||||
static final public String[] LANGUAGE_VERSIONS = new String[]{X4ODriver.DEFAULT_LANGUAGE_VERSION};
|
||||
|
||||
@Override
|
||||
public String getLanguageName() {
|
||||
return LANGUAGE_NAME;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String[] getLanguageVersions() {
|
||||
return LANGUAGE_VERSIONS;
|
||||
}
|
||||
|
||||
static public TOSWarpCoreDriver newInstance() {
|
||||
return (TOSWarpCoreDriver)X4ODriverManager.getX4ODriver(LANGUAGE_NAME);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part.warp;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class WaterBucket {
|
||||
|
||||
private WaterCipher water;
|
||||
|
||||
public WaterCipher theWater() {
|
||||
return water;
|
||||
}
|
||||
|
||||
public void fillWater(WaterCipher water) {
|
||||
this.water = water;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
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 WaterCipher {
|
||||
|
||||
private String name;
|
||||
private String description;
|
||||
private List<WaterCipherHeart> cipherHearts;
|
||||
|
||||
public WaterCipher() {
|
||||
cipherHearts = new ArrayList<>();
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getDescription() {
|
||||
return description;
|
||||
}
|
||||
|
||||
public void setDescription(String description) {
|
||||
this.description = description;
|
||||
}
|
||||
|
||||
public List<WaterCipherHeart> getCipherHearts() {
|
||||
return cipherHearts;
|
||||
}
|
||||
|
||||
public void addCipherHeart(WaterCipherHeart cipherHeart) {
|
||||
this.cipherHearts.add(cipherHeart);
|
||||
}
|
||||
|
||||
public void setCipherHearts(List<WaterCipherHeart> cipherHearts) {
|
||||
this.cipherHearts = cipherHearts;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
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 WaterCipherHeart {
|
||||
|
||||
private Integer bass;
|
||||
private List<WaterCipherHeartTone> heartTones;
|
||||
|
||||
public WaterCipherHeart() {
|
||||
heartTones = new ArrayList<>();
|
||||
}
|
||||
|
||||
public Integer getBass() {
|
||||
return bass;
|
||||
}
|
||||
|
||||
public void setBass(Integer bass) {
|
||||
this.bass = bass;
|
||||
}
|
||||
|
||||
public List<WaterCipherHeartTone> getHeartTones() {
|
||||
return heartTones;
|
||||
}
|
||||
|
||||
public void addHeartTone(WaterCipherHeartTone heartTone) {
|
||||
heartTones.add(heartTone);
|
||||
}
|
||||
|
||||
public void setHeartTones(List<WaterCipherHeartTone> heartTones) {
|
||||
this.heartTones = heartTones;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part.warp;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class WaterCipherHeartTone {
|
||||
|
||||
private String part;
|
||||
private String dialTone;
|
||||
private String chinaKey;
|
||||
private String chinaValue;
|
||||
|
||||
public WaterCipherHeartTone() {
|
||||
}
|
||||
|
||||
public String getPart() {
|
||||
return part;
|
||||
}
|
||||
|
||||
public void setPart(String part) {
|
||||
this.part = part;
|
||||
}
|
||||
|
||||
public String getDialTone() {
|
||||
return dialTone;
|
||||
}
|
||||
|
||||
public void setDialTone(String dialTone) {
|
||||
this.dialTone = dialTone;
|
||||
}
|
||||
|
||||
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,55 @@
|
|||
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;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
/**
|
||||
* Holds an 6 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class V006Tixte implements BaseNumber<V006Tixte> {
|
||||
|
||||
public static int BIT_COUNT = T08PartOctal.BIT_COUNT * T02PartBinary.LENGTH();
|
||||
private final T08PartOctal[] values = new T08PartOctal[T02PartBinary.LENGTH()];
|
||||
|
||||
public V006Tixte() {
|
||||
this(T08PartOctal.PART_1, T08PartOctal.PART_1);
|
||||
}
|
||||
|
||||
public V006Tixte(BaseIteratorOctal values) {
|
||||
this(values.next(), values.next());
|
||||
}
|
||||
|
||||
private V006Tixte(T08PartOctal valueHigh, T08PartOctal valueLow) {
|
||||
values[0] = valueHigh;
|
||||
values[1] = valueLow;
|
||||
}
|
||||
|
||||
public T08PartOctal getValue(T02PartBinary part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T02PartBinary part, T08PartOctal 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) {
|
||||
appender.add(values[0]);
|
||||
appender.add(values[1]);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
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 = T08PartOctal.BIT_COUNT * T03PartTrit.LENGTH();
|
||||
private final T08PartOctal[] values = new T08PartOctal[T03PartTrit.LENGTH()];
|
||||
|
||||
public V009Tyte() {
|
||||
this(T08PartOctal.PART_1, T08PartOctal.PART_1, T08PartOctal.PART_1);
|
||||
}
|
||||
|
||||
public V009Tyte(BaseIteratorOctal values) {
|
||||
this(values.next(), values.next(), values.next());
|
||||
}
|
||||
|
||||
public V009Tyte(T08PartOctal valueHigh, T08PartOctal valueMedium, T08PartOctal valueLow) {
|
||||
values[0] = valueHigh;
|
||||
values[1] = valueMedium;
|
||||
values[2] = valueLow;
|
||||
}
|
||||
|
||||
public T08PartOctal getValue(T03PartTrit part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T03PartTrit part, T08PartOctal value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V009Tyte toClone() {
|
||||
return new V009Tyte(iteratorOctalsByClone());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillOctalsByClone(BaseAppenderOctal appender) {
|
||||
appender.add(values[0]);
|
||||
appender.add(values[1]);
|
||||
appender.add(values[2]);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fillTytesByReference(BaseAppenderTyte appender) {
|
||||
appender.add(this);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,70 @@
|
|||
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;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
|
||||
|
||||
/**
|
||||
* Holds an 18 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public final class V018Tord implements BaseNumberTyte<V018Tord> {
|
||||
|
||||
public static int BIT_COUNT = V009Tyte.BIT_COUNT * T02PartBinary.LENGTH();
|
||||
private V009Tyte[] values = new V009Tyte[T02PartBinary.LENGTH()];
|
||||
|
||||
public V018Tord() {
|
||||
this(new V009Tyte(), new V009Tyte());
|
||||
}
|
||||
|
||||
public V018Tord(BaseIteratorOctal values) {
|
||||
this(new V009Tyte(values), new V009Tyte(values));
|
||||
}
|
||||
|
||||
public V018Tord(BaseIteratorTyte values) {
|
||||
this(values.next(), values.next());
|
||||
}
|
||||
|
||||
private V018Tord(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 T08PartOctal getTimblePart(T06PartSeximal part) {
|
||||
return getValue(part.splitPartBinary()).getValue(part.splitPartTrit());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getBitCount() {
|
||||
return BIT_COUNT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public V018Tord toClone() {
|
||||
return new V018Tord(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 = V018Tord.BIT_COUNT * T02PartBinary.LENGTH();
|
||||
private V018Tord[] values = new V018Tord[T02PartBinary.LENGTH()];
|
||||
|
||||
public V036Teger() {
|
||||
this(new V018Tord(), new V018Tord());
|
||||
}
|
||||
|
||||
public V036Teger(BaseIteratorOctal values) {
|
||||
this(new V018Tord(values), new V018Tord(values));
|
||||
}
|
||||
|
||||
public V036Teger(BaseIteratorTyte values) {
|
||||
this(new V018Tord(values), new V018Tord(values));
|
||||
}
|
||||
|
||||
private V036Teger(V018Tord valueHigh, V018Tord valueLow) {
|
||||
setValue(T02PartBinary.PART_1, valueHigh);
|
||||
setValue(T02PartBinary.PART_2, valueLow);
|
||||
}
|
||||
|
||||
public V018Tord getValue(T02PartBinary part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T02PartBinary part, V018Tord 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 V018Tord 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, V018Tord 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.BaseNumberˣᴸ;
|
||||
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 BaseNumberˣᴸ<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.BaseNumberTyteˣᴸ;
|
||||
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 BaseNumberTyteˣᴸ<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.BaseNumberTyteˣᴸ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T02PartBinary;
|
||||
|
||||
/**
|
||||
* Holds an 3240 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class V0x000CA8ˣᴸ implements BaseNumberTyteˣᴸ<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.BaseNumberˣᴸ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T06PartSeximal;
|
||||
|
||||
/**
|
||||
* Holds an 5040 bit value.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class V0x0013B0ˣᴸ implements BaseNumberˣᴸ<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.BaseNumberˣᴸ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T60PartSexagesimal;
|
||||
|
||||
/**
|
||||
* Holds an 302400 bit value. (37800 bytes)
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class V0x049D40ˣᴸ implements BaseNumberˣᴸ<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,94 @@
|
|||
package love.distributedrebirth.numberxd.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.bassboonyd.BãßBȍőnConstantsʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnPackageInfoʸᴰ;
|
||||
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.")
|
||||
@BãßBȍőnPackageInfoʸᴰ(name = "love.distributedrebirth.numberxd")
|
||||
public enum BaseGlyphSet implements BãßBȍőnGlyphSetʸᴰ<BaseGlyphSet> {
|
||||
|
||||
// TODO: ImGui add font for SINHALA
|
||||
// TODO: ImGui add font for ARABIC
|
||||
|
||||
LATIN_DTMF(new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnChinaValue()))).withSeperator(BãßBȍőnConstantsʸᴰ.STR_SPACE),
|
||||
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ȍőnDialTone()))),
|
||||
new BaseGlyphSetNumber(v -> T16PartHex.PART_1.BãßVoorElk(x -> v.add(x.BȍőnDialTone()))),
|
||||
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),
|
||||
|
||||
CYRILLIC(new BaseGlyphSetNumber("⃝","А","В","Г","Д","Є","Ѕ","З","И","Ѳ"),
|
||||
new BaseGlyphSetNumber("⃝","А","В","Г","Д","Є","Ѕ","З","И","Ѳ","҂"," ҈"," ҉"," ꙰"," ꙱"," ꙲"),
|
||||
new BaseGlyphSetNumber("А","В","Г","Д","Є","Ѕ","З","И","Ѳ","І","К","Л","М","Н","Ѯ","Ѻ","П","Ч","Р","С","Т","Ѵ","Ф","Х","Ѱ","Ѿ","Ц")),
|
||||
|
||||
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()))),
|
||||
null),
|
||||
CHINA_FINANCIAL_S(new BaseGlyphSetNumber("零","壹","贰","叁","肆","伍","陆","柒","捌","玖")),
|
||||
CHINA_NORMAL_T(new BaseGlyphSetNumber("零","一","二","三","四","五","六","七","八","九")),
|
||||
CHINA_NORMAL_S(new BaseGlyphSetNumber("〇","一","二","三","四","五","六","七","八","九")),
|
||||
|
||||
GREEK(new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ"),
|
||||
new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ"),
|
||||
new BaseGlyphSetNumber("α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ","ο","π","ϟ","ρ","σ","τ","υ","φ","χ","ψ","ω","ϡ")),
|
||||
|
||||
KOREAN(new BaseGlyphSetNumber("영","일","이","삼","사","오","육","칠","팔","구"),
|
||||
new BaseGlyphSetNumber("ㅏ","ㅐ","ㅑ","ㅒ","ㅓ","ㅔ","ㅕ","ㅖ","ㅗ","ㅘ","ㅙ","ㅚ","ㅛ","ㅜ","ㅝ","ㅞ"),
|
||||
new BaseGlyphSetNumber("ㄱ","ㄲ","ㄴ","ㄷ","ㄸ","ㄹ","ㅁ","ㅂ","ㅃ","ㅅ","ㅆ","ㅈ","ㅉ","ㅊ","ㅋ","ㅌ","ㅍ","ㅎ","ㄵ","ㄶ","ㄺ","ㄻ","ㄼ","ㄽ","ㄾ","ㄿ","ㅀ")),
|
||||
|
||||
ARABIC(new BaseGlyphSetNumber("٠","١","٢","٣","٤","٥","٦","٧","٨","٩"),
|
||||
new BaseGlyphSetNumber("٠","١","٢","٣","٤","٥","٦","٧","٨","٩","ا","ب","ج","د","ه","و"),
|
||||
new BaseGlyphSetNumber("ا","ب","ج","د","ه","و","ز","ح","ط","ي","ك","ل","م","ن","س","ع","ف","ص","ق","ر","ش","ت","ث","خ","ذ","ض","ظ")),
|
||||
|
||||
HEBREW(new BaseGlyphSetNumber("אֶפֶס","אֶחָד","שְׁתַּיִם","שְׁלֹשָׁה","אַרְבַּע","חֲמִשָּׁה","שֵׁשׁ","שִׁבְעָה","שְׁמוֹנֶה","תִּשְׁעָה").withSeperator(BãßBȍőnConstantsʸᴰ.STR_SPACE),
|
||||
new BaseGlyphSetNumber("אֶפֶס","אֶחָד","שְׁתַּיִם","שְׁלֹשָׁה","אַרְבַּע","חֲמִשָּׁה","שֵׁשׁ","שִׁבְעָה","שְׁמוֹנֶה","תִּשְׁעָה","א","ב","ג","ד","ה","ו"),
|
||||
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);
|
||||
BBC.BOON_INIT(this);
|
||||
this.BȍőnJmxInit(BãßBȍőnGlyphSetKeyʸᴰ.JMX);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,179 @@
|
|||
package love.distributedrebirth.numberxd.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,15 @@
|
|||
package love.distributedrebirth.numberxd.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ʸᴰ {
|
||||
|
||||
JMX,
|
||||
|
||||
NUMBERS,
|
||||
GEMATRIA,
|
||||
HEXIMALS,
|
||||
;
|
||||
}
|
||||
|
|
@ -0,0 +1,116 @@
|
|||
package love.distributedrebirth.numberxd.glyph;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.DefaultEnumSetᴶᴹˣ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BãßBȍőnGlyphSetʸᴰ<T extends BãßBȍőnGlyphSetʸᴰ<T>> extends DefaultEnumSetᴶᴹˣ<T,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);
|
||||
}
|
||||
|
||||
default String BȍőnPrintGlyphSetNumber10(int number, int numberMax) {
|
||||
StringBuilder buf = new StringBuilder();
|
||||
if (numberMax < 10) {
|
||||
buf.append(BȍőnGlyphSetNumber10().BȍőnCharFor(number));
|
||||
} else if (numberMax < 100) {
|
||||
int count = number;
|
||||
int mod10 = count % 10;
|
||||
int div10 = count / 10 % 10;
|
||||
buf.append(BȍőnGlyphSetNumber10().BȍőnCharFor(div10));
|
||||
buf.append(BȍőnGlyphSetNumber10().BȍőnCharSeperator());
|
||||
buf.append(BȍőnGlyphSetNumber10().BȍőnCharFor(mod10));
|
||||
} else if (numberMax < 1000) {
|
||||
int count = number;
|
||||
int mod10 = count % 10;
|
||||
int div10 = count / 10 % 10;
|
||||
int div100 = count / 100 % 10;
|
||||
buf.append(BȍőnGlyphSetNumber10().BȍőnCharFor(div10));
|
||||
buf.append(BȍőnGlyphSetNumber10().BȍőnCharSeperator());
|
||||
buf.append(BȍőnGlyphSetNumber10().BȍőnCharFor(div100));
|
||||
buf.append(BȍőnGlyphSetNumber10().BȍőnCharSeperator());
|
||||
buf.append(BȍőnGlyphSetNumber10().BȍőnCharFor(mod10));
|
||||
} else {
|
||||
throw new IllegalStateException("Can't handle more than 1000 values.");
|
||||
}
|
||||
if (BaseGlyphSet.HEBREW.equals(this)) {
|
||||
return buf.reverse().toString(); // TODO: ImGui workaround
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
default String BȍőnPrintGlyphSetNumber16(int number, int numberMax) {
|
||||
//BãßBȍőnGlyphSetʸᴰ<T> glyphSet = this;
|
||||
StringBuilder buf = new StringBuilder();
|
||||
if (numberMax < 16) {
|
||||
buf.append(BȍőnGlyphSetNumber16().BȍőnCharFor(number));
|
||||
} else if (numberMax < 256) {
|
||||
buf.append(BȍőnGlyphSetNumber16().BȍőnCharFor(number >> 4));
|
||||
buf.append(BȍőnGlyphSetNumber16().BȍőnCharSeperator());
|
||||
BaseGlyphSet secondGlyphSet = BȍőnGlyphSetNumber16().BȍőnAltGlyphSet();
|
||||
if (secondGlyphSet != null) {
|
||||
buf.append(secondGlyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(number & 0x0F));
|
||||
} else {
|
||||
buf.append(BȍőnGlyphSetNumber16().BȍőnCharFor(number & 0x0F));
|
||||
}
|
||||
} else if (numberMax < 0xFFF+1) {
|
||||
buf.append(BȍőnGlyphSetNumber16().BȍőnCharFor((number >> 8) & 0x0F));
|
||||
buf.append(BȍőnGlyphSetNumber16().BȍőnCharSeperator());
|
||||
BaseGlyphSet secondGlyphSet = BȍőnGlyphSetNumber16().BȍőnAltGlyphSet();
|
||||
if (secondGlyphSet != null) {
|
||||
buf.append(secondGlyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor((number >> 4) & 0x0F));
|
||||
buf.append(secondGlyphSet.BȍőnGlyphSetNumber16().BȍőnCharSeperator());
|
||||
buf.append(secondGlyphSet.BȍőnGlyphSetNumber16().BȍőnCharFor(number & 0x0F));
|
||||
} else {
|
||||
buf.append(BȍőnGlyphSetNumber16().BȍőnCharFor((number >> 4) & 0x0F));
|
||||
buf.append(BȍőnGlyphSetNumber16().BȍőnCharSeperator());
|
||||
buf.append(BȍőnGlyphSetNumber16().BȍőnCharFor(number & 0x0F));
|
||||
}
|
||||
} else {
|
||||
throw new IllegalStateException("Can't handle more than 0xFFF values.");
|
||||
}
|
||||
if (BaseGlyphSet.HEBREW.equals(this)) {
|
||||
return buf.reverse().toString(); // TODO: ImGui workaround
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
default String BȍőnPrintGlyphSetNumber36(int number, int numberMax) {
|
||||
StringBuilder buf = new StringBuilder();
|
||||
if (numberMax < 9) {
|
||||
buf.append(BȍőnGlyphSetNumber36().BȍőnCharFor36(number + 1));
|
||||
} else if (numberMax < 99) {
|
||||
int count = number + 1;
|
||||
int mod10 = (count % 9) + 1;
|
||||
int div10 = ((count / 9) % 9) + 1;
|
||||
buf.append(BȍőnGlyphSetNumber36().BȍőnCharFor36(div10));
|
||||
buf.append(BȍőnGlyphSetNumber36().BȍőnCharSeperator());
|
||||
buf.append(BȍőnGlyphSetNumber36().BȍőnCharFor36(mod10));
|
||||
} else if (numberMax < 999) {
|
||||
int count = number;
|
||||
int mod10 = (count % 9) + 1;
|
||||
int div10 = ((count / 90) & 9) + 1;
|
||||
int div100 = ((count / 900) & 9) + 1;
|
||||
buf.append(BȍőnGlyphSetNumber36().BȍőnCharFor36(div10));
|
||||
buf.append(BȍőnGlyphSetNumber36().BȍőnCharSeperator());
|
||||
buf.append(BȍőnGlyphSetNumber36().BȍőnCharFor36(div100));
|
||||
buf.append(BȍőnGlyphSetNumber36().BȍőnCharSeperator());
|
||||
buf.append(BȍőnGlyphSetNumber36().BȍőnCharFor36(mod10));
|
||||
} else {
|
||||
throw new IllegalStateException("Can't handle more than 1000 values.");
|
||||
}
|
||||
if (BaseGlyphSet.HEBREW.equals(this)) {
|
||||
return buf.reverse().toString(); // TODO: ImGui workaround
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
package love.distributedrebirth.numberxd.x4o;
|
||||
|
||||
import org.x4o.xml.lang.X4OLanguageLocal;
|
||||
import org.x4o.xml.lang.X4OLanguageModuleLoader;
|
||||
import org.x4o.xml.lang.X4OLanguageModuleLoaderException;
|
||||
import org.x4o.xml.lang.X4OLanguageModuleLocal;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class NumberXDModuleLoader implements X4OLanguageModuleLoader {
|
||||
|
||||
private static final String PP_NXD_PROVIDER_HOST = "numberxd.x4o.distributedrebirth.love";
|
||||
private static final String PP_NXD_XMLNS = "http://"+PP_NXD_PROVIDER_HOST+"/xml/ns/";
|
||||
private static final String PP_NXD_XSD_FILE = "-1.0.xsd";
|
||||
private static final String NXD_CORE = "nxd-core";
|
||||
private static final String NXD_ROOT = "nxd-root";
|
||||
private static final String NXD_CORE_XSD_FILE = NXD_CORE+PP_NXD_XSD_FILE;
|
||||
private static final String NXD_ROOT_XSD_FILE = NXD_ROOT+PP_NXD_XSD_FILE;
|
||||
/** The NXD core namespace uri. */
|
||||
public static final String NXD_CORE_URI = PP_NXD_XMLNS+NXD_CORE;
|
||||
/** The NXD root namespace uri. */
|
||||
public static final String NXD_ROOT_URI = PP_NXD_XMLNS+NXD_ROOT;
|
||||
/** The NXD core schema namespace uri. */
|
||||
public static final String NXD_CORE_XSD_URI = NXD_CORE_URI+PP_NXD_XSD_FILE;
|
||||
/** The NXD root schema namespace uri. */
|
||||
public static final String NXD_ROOT_XSD_URI = NXD_ROOT_URI+PP_NXD_XSD_FILE;
|
||||
|
||||
@Override
|
||||
public void loadLanguageModule(X4OLanguageLocal arg0, X4OLanguageModuleLocal arg1) throws X4OLanguageModuleLoaderException {
|
||||
// TODO Auto-generated method stub
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<?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">
|
||||
<module-loader>love.distributedrebirth.numberxd.x4o.NumberXDModuleLoader</module-loader>
|
||||
</language>
|
||||
</modules>
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<root:module xmlns:root="http://eld.x4o.org/xml/ns/eld-root"
|
||||
xmlns:eld="http://eld.x4o.org/xml/ns/eld-lang"
|
||||
xmlns:conv="http://eld.x4o.org/xml/ns/eld-conv"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://eld.x4o.org/xml/ns/eld-root http://eld.x4o.org/xml/ns/eld-root-1.0.xsd"
|
||||
providerHost="warpcore.x4o.distributedrebirth.love" providerName="WarpCore Encryption"
|
||||
id="warpcore-module">
|
||||
|
||||
<eld:classBindingHandler id="Bucket-Water"
|
||||
parentClass="love.distributedrebirth.numberxd.base2t.part.warp.WaterBucket"
|
||||
childClass="love.distributedrebirth.numberxd.base2t.part.warp.WaterCipher"
|
||||
addMethod="fillWater" getMethod="theWater" />
|
||||
<eld:classBindingHandler id="Water-Heart"
|
||||
parentClass="love.distributedrebirth.numberxd.base2t.part.warp.WaterCipher"
|
||||
childClass="love.distributedrebirth.numberxd.base2t.part.warp.WaterCipherHeart"
|
||||
addMethod="addCipherHeart" getMethod="getCipherHearts" />
|
||||
<eld:classBindingHandler id="Heart-Tone"
|
||||
parentClass="love.distributedrebirth.numberxd.base2t.part.warp.WaterCipherHeart"
|
||||
childClass="love.distributedrebirth.numberxd.base2t.part.warp.WaterCipherHeartTone"
|
||||
addMethod="addHeartTone" getMethod="getHeartTones" />
|
||||
|
||||
<eld:namespace
|
||||
uri="http://wrapcore.x4o.distributedrebirth.love/xml/ns/warpcore-root"
|
||||
schemaUri="http://warpcore.x4o.distributedrebirth.love/xml/ns/warpcore-root-1.0.xsd"
|
||||
schemaResource="warpcore-root-1.0.xsd" schemaPrefix="root"
|
||||
description="Root namespace to have nice namespaceing."
|
||||
name="WarpCore Root Namespace" languageRoot="true" id="root">
|
||||
<eld:element tag="bucket"
|
||||
objectClass="love.distributedrebirth.numberxd.base2t.part.warp.WaterBucket"/>
|
||||
</eld:namespace>
|
||||
|
||||
<eld:namespace
|
||||
uri="http://warpcore.x4o.distributedrebirth.love/xml/ns/warpcore-cipher"
|
||||
schemaUri="http://warpcore.x4o.distributedrebirth.love/xml/ns/warpcore-cipher-1.0.xsd"
|
||||
schemaResource="warpcore-lang-1.0.xsd" schemaPrefix="cipher"
|
||||
description="Language namespace to store warp cipher"
|
||||
name="WarpCore Language Namespace" id="cipher">
|
||||
<eld:element tag="water"
|
||||
objectClass="love.distributedrebirth.numberxd.base2t.part.warp.WaterCipher" />
|
||||
<eld:element tag="heart"
|
||||
objectClass="love.distributedrebirth.numberxd.base2t.part.warp.WaterCipherHeart" />
|
||||
<eld:element tag="tone"
|
||||
objectClass="love.distributedrebirth.numberxd.base2t.part.warp.WaterCipherHeartTone" />
|
||||
</eld:namespace>
|
||||
</root:module>
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
<?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>warpcore-lang.eld</eld-resource>
|
||||
</language>
|
||||
</modules>
|
||||
11
lib-numberxd/src/resources/META-INF/x4o-drivers.xml
Normal file
11
lib-numberxd/src/resources/META-INF/x4o-drivers.xml
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
<?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"
|
||||
>
|
||||
<driver language="warpcore" className="love.distributedrebirth.numberxd.base2t.part.warp.TOSWarpCoreDriver"/>
|
||||
<!--
|
||||
<defaultDriver language="numberxd"/>
|
||||
-->
|
||||
</drivers>
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
package love.distributedrebirth.numberxd;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class GroßGetậlŌṁDiamond1Testⁿᴰ {
|
||||
|
||||
@Test
|
||||
public void testClone() {
|
||||
|
||||
GroßGetậlŌṁDiamond1ⁿᴰ getal = new GroßGetậlŌṁDiamond1ⁿᴰ(1);
|
||||
GroßGetậlŌṁDiamond1ⁿᴰ getalClone = getal.toClone();
|
||||
|
||||
Assertions.assertNotNull(getal);
|
||||
Assertions.assertNotNull(getalClone);
|
||||
|
||||
System.out.println("getal: "+getal);
|
||||
System.out.println("getal.m0L: "+getal.getMatrix1Length());
|
||||
System.out.println("getal.m1L: "+getal.getMatrix2Length());
|
||||
|
||||
GroßGetậlŌṁDiamond1ⁿᴰ getal2 = new GroßGetậlŌṁDiamond1ⁿᴰ(2);
|
||||
GroßGetậlŌṁDiamond1ⁿᴰ getal3 = new GroßGetậlŌṁDiamond1ⁿᴰ(3);
|
||||
GroßGetậlŌṁDiamond1ⁿᴰ getal4 = new GroßGetậlŌṁDiamond1ⁿᴰ(4);
|
||||
GroßGetậlŌṁDiamond1ⁿᴰ getal5 = new GroßGetậlŌṁDiamond1ⁿᴰ(5).toClone();
|
||||
|
||||
System.out.println("getal5: "+getal5);
|
||||
System.out.println("getal5.m0L: "+getal5.getMatrix1Length());
|
||||
System.out.println("getal5.m1L: "+getal5.getMatrix2Length());
|
||||
}
|
||||
}
|
||||
|
|
@ -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()), "key: "+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ȍőnDialTone())) {
|
||||
duplicate = true;
|
||||
break;
|
||||
}
|
||||
global.put(part.BȍőnDialTone(), 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ȍőnDialTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T02PartBinary.PART_1, T02PartBinary.PART_1.BãßValueOfDialTone("˧"));
|
||||
Assertions.assertEquals(T02PartBinary.PART_2, T02PartBinary.PART_1.BãßValueOfDialTone("꜔"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T02PartBinary.PART_1, T02PartBinary.PART_1.BãßValueOfChinaKey("低"));
|
||||
Assertions.assertEquals(T02PartBinary.PART_2, T02PartBinary.PART_1.BãßValueOfChinaKey("高"));
|
||||
}
|
||||
}
|
||||
|
|
@ -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ȍőnDialTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T03PartTrit.PART_1, T03PartTrit.PART_1.BãßValueOfDialTone("˦"));
|
||||
Assertions.assertEquals(T03PartTrit.PART_2, T03PartTrit.PART_1.BãßValueOfDialTone("˧"));
|
||||
Assertions.assertEquals(T03PartTrit.PART_3, T03PartTrit.PART_1.BãßValueOfDialTone("˨"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T03PartTrit.PART_1, T03PartTrit.PART_1.BãßValueOfChinaKey("一"));
|
||||
Assertions.assertEquals(T03PartTrit.PART_2, T03PartTrit.PART_1.BãßValueOfChinaKey("二"));
|
||||
Assertions.assertEquals(T03PartTrit.PART_3, T03PartTrit.PART_1.BãßValueOfChinaKey("三"));
|
||||
}
|
||||
}
|
||||
|
|
@ -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ȍőnDialTone());
|
||||
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ãßValueOfDialTone("˥"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_2, T04PartQuad.PART_1.BãßValueOfDialTone("꜒"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_3, T04PartQuad.PART_1.BãßValueOfDialTone("꜖"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_4, T04PartQuad.PART_1.BãßValueOfDialTone("˩"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T04PartQuad.PART_1, T04PartQuad.PART_1.BãßValueOfChinaKey("北"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_2, T04PartQuad.PART_1.BãßValueOfChinaKey("東"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_3, T04PartQuad.PART_1.BãßValueOfChinaKey("西"));
|
||||
Assertions.assertEquals(T04PartQuad.PART_4, T04PartQuad.PART_1.BãßValueOfChinaKey("南"));
|
||||
}
|
||||
}
|
||||
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