Move libs to top level
This commit is contained in:
parent
87ce108bd1
commit
57f46b2210
212 changed files with 16 additions and 29 deletions
21
gdxapp4d-lib-numberxd/pom.xml
Normal file
21
gdxapp4d-lib-numberxd/pom.xml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>love.distributedrebirth.gdxapp4d</groupId>
|
||||
<artifactId>gdxapp4d</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>gdxapp4d-lib-numberxd</artifactId>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>love.distributedrebirth.gdxapp4d</groupId>
|
||||
<artifactId>gdxapp4d-lib-bassboonyd</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>love.distributedrebirth.gdxapp4d</groupId>
|
||||
<artifactId>gdxapp4d-lib-warpme</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
|
|
@ -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,62 @@
|
|||
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,60 @@
|
|||
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.BãßBȍőnPartʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.typexl.V0x0013B0ˣᴸ;
|
||||
|
||||
/**
|
||||
* Wave getal in x parts.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class WavẽWorstGetậl1ⁿᴰ extends AbstractBaseGetậlMatrix1<WavẽWorstGetậl1ⁿᴰ, V0x0013B0ˣᴸ> {
|
||||
|
||||
private final V0x0013B0ˣᴸ[] values;
|
||||
private final BãßBȍőnPartʸᴰ<?> worstCut;
|
||||
private final int worstCutLength;
|
||||
|
||||
public WavẽWorstGetậl1ⁿᴰ(BãßBȍőnPartʸᴰ<?> worstCut) {
|
||||
this.worstCut = worstCut;
|
||||
this.worstCutLength = worstCut.BãßInstances().length;
|
||||
this.values = new V0x0013B0ˣᴸ[this.worstCutLength];
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V0x0013B0ˣᴸ();
|
||||
}
|
||||
}
|
||||
|
||||
public WavẽWorstGetậl1ⁿᴰ(BãßBȍőnPartʸᴰ<?> worstCut, BaseIteratorOctal values) {
|
||||
this.worstCut = worstCut;
|
||||
this.worstCutLength = worstCut.BãßInstances().length;
|
||||
this.values = new V0x0013B0ˣᴸ[this.worstCutLength];
|
||||
for (int i=0;i<this.values.length;i++) {
|
||||
this.values[i] = new V0x0013B0ˣᴸ(values);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public V0x0013B0ˣᴸ getValue() {
|
||||
return values[matrix1];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix1Length() {
|
||||
return worstCutLength;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WavẽWorstGetậl1ⁿᴰ toClone(BaseIteratorOctal values) {
|
||||
return new WavẽWorstGetậl1ⁿᴰ(worstCut, 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,77 @@
|
|||
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.BãßBȍőnPartʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.typexl.V0x0013B0ˣᴸ;
|
||||
|
||||
/**
|
||||
* Wave channel in y parts.
|
||||
*/
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class WavẽWorstGetậl2ⁿᴰ extends AbstractBaseGetậlMatrix2<WavẽWorstGetậl2ⁿᴰ, V0x0013B0ˣᴸ> {
|
||||
|
||||
private final V0x0013B0ˣᴸ[][] values;
|
||||
private final BãßBȍőnPartʸᴰ<?> worstCut;
|
||||
private final int worstCutLength;
|
||||
private final BãßBȍőnPartʸᴰ<?> worstChannel;
|
||||
private final int worstChannelLength;
|
||||
|
||||
public WavẽWorstGetậl2ⁿᴰ(BãßBȍőnPartʸᴰ<?> worstCut, BãßBȍőnPartʸᴰ<?> worstChannel) {
|
||||
this.worstCut = worstCut;
|
||||
this.worstCutLength = worstCut.BãßInstances().length;
|
||||
this.worstChannel = worstChannel;
|
||||
this.worstChannelLength = worstChannel.BãßInstances().length;
|
||||
this.values = new V0x0013B0ˣᴸ[this.worstCutLength][this.worstChannelLength];
|
||||
for (int x=0;x<this.worstCutLength;x++) {
|
||||
for (int y=0;y<this.worstChannelLength;y++) {
|
||||
this.values[x][y] = new V0x0013B0ˣᴸ();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public WavẽWorstGetậl2ⁿᴰ(BãßBȍőnPartʸᴰ<?> worstCut, BãßBȍőnPartʸᴰ<?> worstChannel, BaseIteratorOctal values) {
|
||||
this.worstCut = worstCut;
|
||||
this.worstCutLength = worstCut.BãßInstances().length;
|
||||
this.worstChannel = worstChannel;
|
||||
this.worstChannelLength = worstChannel.BãßInstances().length;
|
||||
this.values = new V0x0013B0ˣᴸ[this.worstCutLength][this.worstChannelLength];
|
||||
for (int x=0;x<this.worstCutLength;x++) {
|
||||
for (int y=0;y<this.worstChannelLength;y++) {
|
||||
this.values[x][y] = new V0x0013B0ˣᴸ(values);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public V0x0013B0ˣᴸ getValue() {
|
||||
return values[matrix1][matrix2];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix1Length() {
|
||||
return worstCutLength;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMatrix2Length() {
|
||||
return worstChannelLength;
|
||||
}
|
||||
|
||||
@Override
|
||||
public WavẽWorstGetậl2ⁿᴰ toClone(BaseIteratorOctal values) {
|
||||
return new WavẽWorstGetậl2ⁿᴰ(worstCut, worstChannel, values);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseIteratorOctal iteratorOctalsByClone() {
|
||||
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
|
||||
for (int x=0;x<this.worstCutLength;x++) {
|
||||
for (int y=0;y<this.worstChannelLength;y++) {
|
||||
cloneStack.addIterator(this.values[x][y].iteratorOctalsByClone());
|
||||
}
|
||||
}
|
||||
return cloneStack;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,111 @@
|
|||
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;
|
||||
}
|
||||
|
||||
enum ŌctopǔsMatrixInzet {
|
||||
NONE,
|
||||
MATRIX_X,
|
||||
MATRIX_XY,
|
||||
MATRIX_XYZ,
|
||||
MATRIX_XYZW,
|
||||
MATRIX_DIAMOND,
|
||||
MATRIX_HYPERSTAR
|
||||
}
|
||||
|
||||
enum ŌctopǔsArmZuigerInzet {
|
||||
//OCTAL_1, // T08PartOctal
|
||||
//OCTAL_2, // V006Tixte
|
||||
OCTAL_3, // V009Tyte
|
||||
OCTAL_6, // V018Tord
|
||||
OCTAL_9, // V027Temvig
|
||||
OCTAL_12, // V036Teger
|
||||
OCTAL_14, // V042Traw
|
||||
OCTAL_24, // V072Tong
|
||||
OCTAL_48, // V144Tocta
|
||||
|
||||
OCTAL_48_MATRIX_X,
|
||||
OCTAL_48_MATRIX_XY,
|
||||
OCTAL_48_MATRIX_XYZ,
|
||||
OCTAL_48_MATRIX_XYZW,
|
||||
|
||||
OCTAL_280, // V0x000348ˣᴸ (V042Traw * 20)
|
||||
OCTAL_540, // V0x000654ˣᴸ (V027Temvig * 60)
|
||||
OCTAL_1080, // V0x000CA8ˣᴸ (V0x000654ˣᴸ * 2)
|
||||
OCTAL_1680, // V0x0013B0ˣᴸ (V0x000348ˣᴸ * 6)
|
||||
|
||||
FRACTION_8640_MATRIX, // KlompGetậl4ˢᴰ (V0x000CA8ˣᴸ * 8)
|
||||
|
||||
FRACTION_3, // V009Tyte = digit aka digital hebrew BCD
|
||||
FRACTION_12_MATRIX_X, // Gê̄ldGetậl (V036Teger * 1_ or quad digit
|
||||
|
||||
FRACTION_GROß_MATRIX_X, // GroßGetậl1ⁿᴰ (V144Tocta * 1) or 7/9
|
||||
FRACTION_GROß_MATRIX_XY, // GroßGetậl6ˢᴰ (GroßGetậl1ⁿᴰ * 2 * 6)
|
||||
FRACTION_GROß_MATRIX_XYZ,
|
||||
FRACTION_GROß_MATRIX_XYZW,
|
||||
|
||||
FRACTION_DIAMOND_MATRIX_XY, // GroßGetậlŌṁDiamond1ⁿᴰ
|
||||
FRACTION_DIAMOND_MATRIX_XYZ, // GroßGetậlŌṁDiamond6ˢᴰ
|
||||
FRACTION_HYPERSTAR_MATRIX_XY, // GroßGetậlŌṁHyperStàr1ⁿᴰ
|
||||
FRACTION_HYPERSTAR_MATRIX_XYZ, // GroßGetậlŌṁHyperStàr6ˢᴰ
|
||||
|
||||
OCTAL_482_MATRIX_X, // WavẽWorstGetậl1ⁿᴰ (V0x0013B0ˣᴸ * x)
|
||||
OCTAL_482_MATRIX_XY, // WavẽWorstGetậl2ⁿᴰ (V0x0013B0ˣᴸ * x * y)
|
||||
|
||||
OCTAL_280_MATRIX_X, // WavẽWorstGetậl1ⁿᴰ (V0x000348ˣᴸ * x)
|
||||
OCTAL_280_MATRIX_XY, // WavẽWorstGetậl2ⁿᴰ (V0x000348ˣᴸ * x * y)
|
||||
|
||||
OCTAL_1680_MATRIX_X, // WavẽWorstGetậl1ⁿᴰ (V0x0013B0ˣᴸ * x)
|
||||
OCTAL_1680_MATRIX_XY, // WavẽWorstGetậl2ⁿᴰ (V0x0013B0ˣᴸ * x * y)
|
||||
|
||||
}
|
||||
|
||||
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,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 = "Base2PartsFactory", purpose = "Factory to access the bases.")
|
||||
@BãßBȍőnPackageInfoʸᴰ(name = "love.distributedrebirth.numberxd")
|
||||
public enum Base2PartsFactory implements DefaultEnumInstanceᴶᴹˣ<Base2PartsFactory, 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 Base2PartsFactory() {
|
||||
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,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,28 @@
|
|||
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 BãßBitCount();
|
||||
|
||||
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,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,66 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
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ãßInstancesToMap(v -> v.BȍőnDialTone()));
|
||||
}
|
||||
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ãßInstancesToMap(v -> v.BȍőnChinaKey()));
|
||||
}
|
||||
return (T) mapChina.get(chinaKey);
|
||||
}
|
||||
|
||||
default String BȍőnPrintGlyphSetNumber10(BaseGlyphSet glyphSet) {
|
||||
return glyphSet.BȍőnPrintNumber10(BȍőnRangTelNul(), BãßInstances().length - 1);
|
||||
}
|
||||
|
||||
default String BȍőnPrintGlyphSetNumber16(BaseGlyphSet glyphSet) {
|
||||
return glyphSet.BȍőnPrintNumber16(BȍőnRangTelNul(), BãßInstances().length - 1);
|
||||
}
|
||||
|
||||
default String BȍőnPrintGlyphSetNumber27(BaseGlyphSet glyphSet) {
|
||||
return glyphSet.BȍőnPrintNumber27(BȍőnRangTelNul(), BãßInstances().length - 1);
|
||||
}
|
||||
}
|
||||
|
|
@ -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,131 @@
|
|||
package love.distributedrebirth.numberxd.base2t.part.warp;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
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.Base2PartsFactory;
|
||||
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartKeyʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartʸᴰ;
|
||||
import love.distributedrebirth.warpme.core.WaterBucket;
|
||||
import love.distributedrebirth.warpme.core.WaterCipher;
|
||||
import love.distributedrebirth.warpme.core.WaterCipherHeart;
|
||||
import love.distributedrebirth.warpme.core.WaterCipherHeartTone;
|
||||
|
||||
@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ᴶᴹˣ warpCoreValidates;
|
||||
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.");
|
||||
warpCoreValidates = BȍőnJmxInitGuageCounter(MBeanStoreKeyᴶᴹˣ.JMX, "warpCoreValidates", "The amount of warpcore validates.");
|
||||
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(Consumer<String> logHandler) {
|
||||
armedWarpCipherLock.setValueBoolean(true);
|
||||
for (int base:Base2PartsFactory.INSTANCE.BãßBases()) {
|
||||
BãßBȍőnPartʸᴰ<?>[] parts = Base2PartsFactory.INSTANCE.BãßBuildPartsByBase(base);
|
||||
BãßBȍőnCoffinOpenʸᴰ.lockCoffin(parts[0], logHandler);
|
||||
}
|
||||
}
|
||||
|
||||
public WaterBucket BãßCurrentWarpCore() {
|
||||
warpCoreReads.increment();
|
||||
WaterCipher warpCipher = new WaterCipher();
|
||||
warpCipher.setName(armedWarpWaterName.getValueString());
|
||||
warpCipher.setDescription(armedWarpWaterDesc.getValueString());
|
||||
for (int base:Base2PartsFactory.INSTANCE.BãßBases()) {
|
||||
WaterCipherHeart heart = new WaterCipherHeart();
|
||||
BãßBȍőnPartʸᴰ<?>[] bases = Base2PartsFactory.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ãßValidateWarpCore(WaterBucket warpBucket) {
|
||||
warpCoreValidates.increment();
|
||||
Map<String,String> chinaKey = new HashMap<>();
|
||||
Map<String,String> chinaValue = new HashMap<>();
|
||||
for (WaterCipherHeart heart:warpBucket.theWater().getCipherHearts()) {
|
||||
BãßBȍőnPartʸᴰ<?>[] bases = Base2PartsFactory.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()) {
|
||||
if(chinaKey.containsKey(tone.getChinaKey())) {
|
||||
throw new IllegalArgumentException("Duplicate chinaKey: "+tone.getChinaKey());
|
||||
}
|
||||
if(chinaValue.containsKey(tone.getChinaValue())) {
|
||||
throw new IllegalArgumentException("Duplicate chinaValue: "+tone.getChinaValue());
|
||||
}
|
||||
chinaKey.put(tone.getChinaKey(), tone.getDialTone());
|
||||
chinaValue.put(tone.getChinaValue(), tone.getDialTone());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void BãßArmWarpCore(WaterBucket warpBucket) {
|
||||
BãßValidateWarpCore(warpBucket);
|
||||
warpCoreWrites.increment();
|
||||
armedWarpWaterName.setValueString(warpBucket.theWater().getName());
|
||||
armedWarpWaterDesc.setValueString(warpBucket.theWater().getDescription());
|
||||
for (WaterCipherHeart heart:warpBucket.theWater().getCipherHearts()) {
|
||||
BãßBȍőnPartʸᴰ<?>[] bases = Base2PartsFactory.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,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 BãßBitCount() {
|
||||
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,77 @@
|
|||
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 short getValueNumber() {
|
||||
short result = 0;
|
||||
result += (getValue(T03PartTrit.PART_1).BȍőnRangTelNul() << 0);
|
||||
result += (getValue(T03PartTrit.PART_2).BȍőnRangTelNul() << 3);
|
||||
result += (getValue(T03PartTrit.PART_3).BȍőnRangTelNul() << 6);
|
||||
return result;
|
||||
}
|
||||
|
||||
public void setValueNumber(short number) {
|
||||
setValue(T03PartTrit.PART_1, T08PartOctal.values()[(number >> 0) & 0b111]);
|
||||
setValue(T03PartTrit.PART_2, T08PartOctal.values()[(number >> 3) & 0b111]);
|
||||
setValue(T03PartTrit.PART_3, T08PartOctal.values()[(number >> 6) & 0b111]);
|
||||
}
|
||||
|
||||
public T08PartOctal getValue(T03PartTrit part) {
|
||||
return values[part.ordinal()];
|
||||
}
|
||||
|
||||
public void setValue(T03PartTrit part, T08PartOctal value) {
|
||||
values[part.ordinal()] = value;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int BãßBitCount() {
|
||||
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,86 @@
|
|||
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 int getValueNumber() {
|
||||
int result = 0;
|
||||
result += (getValue(T02PartBinary.PART_1).getValueNumber() << 0);
|
||||
result += (getValue(T02PartBinary.PART_2).getValueNumber() << 9);
|
||||
return result;
|
||||
}
|
||||
|
||||
public void setValueNumber(int number) {
|
||||
getValue(T02PartBinary.PART_1).setValueNumber((short) ((number >> 0) & 0b111111111));
|
||||
getValue(T02PartBinary.PART_2).setValueNumber((short) ((number >> 9) & 0b111111111));
|
||||
}
|
||||
|
||||
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());
|
||||
}
|
||||
|
||||
public void setTimblePart(T06PartSeximal part, T08PartOctal value) {
|
||||
getValue(part.splitPartBinary()).setValue(part.splitPartTrit(), value);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int BãßBitCount() {
|
||||
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 BãßBitCount() {
|
||||
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,87 @@
|
|||
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 long getValueNumber() {
|
||||
int result = 0;
|
||||
result += (getValue(T02PartBinary.PART_1).getValueNumber() << 0);
|
||||
result += (getValue(T02PartBinary.PART_2).getValueNumber() << 18);
|
||||
return result;
|
||||
}
|
||||
|
||||
public void setValueNumber(long number) {
|
||||
getValue(T02PartBinary.PART_1).setValueNumber((int) ((number >> 0) & 0b111111111111111111));
|
||||
getValue(T02PartBinary.PART_2).setValueNumber((int) ((number >> 18) & 0b111111111111111111));
|
||||
}
|
||||
|
||||
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 BãßBitCount() {
|
||||
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 BãßBitCount() {
|
||||
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 BãßBitCount() {
|
||||
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 BãßBitCount() {
|
||||
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 BãßBitCount() {
|
||||
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 BãßBitCount() {
|
||||
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 BãßBitCount() {
|
||||
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 BãßBitCount() {
|
||||
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,294 @@
|
|||
package love.distributedrebirth.numberxd.glyph;
|
||||
|
||||
import java.text.DecimalFormat;
|
||||
|
||||
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.bassboonyd.jmx.DefaultEnumSetᴶᴹˣ;
|
||||
import love.distributedrebirth.bassboonyd.jmx.GuageCounterᴶᴹˣ;
|
||||
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 DefaultEnumSetᴶᴹˣ<BaseGlyphSet,BãßBȍőnGlyphSetKeyʸᴰ> {
|
||||
|
||||
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_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_TOP(
|
||||
new BaseGlyphSetNumber("⁰","¹","²","³","⁴","⁵","⁶","⁷","⁸","⁹"),
|
||||
new BaseGlyphSetNumber("⁰","¹","²","³","⁴","⁵","⁶","⁷","⁸","⁹","ᵃ","ᵇ","ᶜ","ᵈ","ᵉ","ᶠ"),
|
||||
new BaseGlyphSetNumber("¹","²","³","⁴","⁵","⁶","⁷","⁸","⁹","ᵃ","ᵇ","ᶜ","ᵈ","ᵉ","ᶠ","ᴳ","ᴴ","ᴵ","ᴶ","ᴷ","ᴸ","ᴹ","ᴺ","ᴼ","ᴾ","Q","ᴿ")),
|
||||
LATIN_SUB(
|
||||
new BaseGlyphSetNumber("₀","₁","₂","₃","₄","₅","₆","₇","₈","₉"),
|
||||
new BaseGlyphSetNumber("₀","₁","₂","₃","₄","₅","₆","₇","₈","₉","ₐ","₆","꜀","ₔ","ₑ","բ"),
|
||||
new BaseGlyphSetNumber("₁","₂","₃","₄","₅","₆","₇","₈","₉","ₐ","₆","꜀","ₔ","ₑ","բ","G","ₕ","ᵢ","ⱼ","ₖ","ₗ","ₘ","ₙ","ₒ","ₚ","Q","ᵣ")),
|
||||
LATIN_TOPHEX(
|
||||
LATIN_BASIC.BȍőnNumber10(),
|
||||
LATIN_BASIC.BȍőnNumber16().withAltGlyphSet(LATIN_TOP),
|
||||
null),
|
||||
LATIN_SUBHEX(
|
||||
LATIN_BASIC.BȍőnNumber10(),
|
||||
LATIN_BASIC.BȍőnNumber16().withAltGlyphSet(LATIN_SUB),
|
||||
null),
|
||||
|
||||
TONE_SCRIPT(
|
||||
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_LRPATH_TOPHEX(
|
||||
new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt1Value()))),
|
||||
new BaseGlyphSetNumber("˧˥˩","˧˩˥","˧˥˦","˧˩˨","˧˦˦","˧˨˨","˧˥˥","˧˩˩","˥˩˧","˩˥˧","˥˦˧","˩˨˧","˦˦˧","˨˨˧","˥˥˧","˩˩˧").withAltGlyphSet(BaseGlyphSet.LATIN_TOP),
|
||||
TONE_SCRIPT.BȍőnNumber27()),
|
||||
DIPAVALI_LRPATH_SUBHEX(
|
||||
new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt1Value()))),
|
||||
new BaseGlyphSetNumber("˧˥˩","˧˩˥","˧˥˦","˧˩˨","˧˦˦","˧˨˨","˧˥˥","˧˩˩","˥˩˧","˩˥˧","˥˦˧","˩˨˧","˦˦˧","˨˨˧","˥˥˧","˩˩˧").withAltGlyphSet(BaseGlyphSet.LATIN_SUB),
|
||||
TONE_SCRIPT.BȍőnNumber27()),
|
||||
DIPAVALI_RLPATH_TOPHEX(
|
||||
new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt2Value()))),
|
||||
new BaseGlyphSetNumber("꜔꜒꜖","꜔꜖꜒","꜔꜒꜓","꜔꜖꜕","꜔꜓꜓","꜔꜕꜕","꜔꜒꜒","꜔꜖꜖","꜒꜖꜔","꜖꜒꜔","꜒꜓꜔","꜖꜕꜔","꜓꜓꜔","꜕꜕꜔","꜒꜒꜔","꜖꜖꜔").withAltGlyphSet(BaseGlyphSet.LATIN_TOP),
|
||||
TONE_SCRIPT.BȍőnNumber27()),
|
||||
DIPAVALI_RLPATH_SUBHEX(
|
||||
new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnAlt2Value()))),
|
||||
new BaseGlyphSetNumber("꜔꜒꜖","꜔꜖꜒","꜔꜒꜓","꜔꜖꜕","꜔꜓꜓","꜔꜕꜕","꜔꜒꜒","꜔꜖꜖","꜒꜖꜔","꜖꜒꜔","꜒꜓꜔","꜖꜕꜔","꜓꜓꜔","꜕꜕꜔","꜒꜒꜔","꜖꜖꜔").withAltGlyphSet(BaseGlyphSet.LATIN_SUB),
|
||||
TONE_SCRIPT.BȍőnNumber27()),
|
||||
|
||||
GREEK(
|
||||
new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ"),
|
||||
new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ"),
|
||||
new BaseGlyphSetNumber("α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ","ο","π","ϟ","ρ","σ","τ","υ","φ","χ","ψ","ω","ϡ")),
|
||||
BENGALI(
|
||||
new BaseGlyphSetNumber("০","১","২","৩","৪","৫","৬","৭","৮","৯"),
|
||||
new BaseGlyphSetNumber("০","১","২","৩","৪","৫","৬","৭","৮","৯","জ্ঞ","ক্ষ","হ","স","ষ","শ"),
|
||||
new BaseGlyphSetNumber("ক","খ","গ","ঘ","ঙ","চ","ছ","জ","ঝ","ঞ","ট","ঠ","ড","ঢ","ণ","ত","থ","দ","ধ","ন","প","ফ","ব","ভ","ম","য","র")),
|
||||
KANNADA(
|
||||
new BaseGlyphSetNumber("೦","೧","೨","೩","೪","೫","೬","೭","೮","೯"),
|
||||
new BaseGlyphSetNumber("೦","೧","೨","೩","೪","೫","೬","೭","೮","೯","ಕ","ಖ","ಗ","ಘ","ಙ","ಚ"),
|
||||
new BaseGlyphSetNumber("ಕ","ಖ","ಗ","ಘ","ಙ","ಚ","ಛ","ಜ","ಝ","ಞ","ಟ","ಠ","ಡ","ಢ","ಣ","ತ","ಥ","ದ","ಧ","ನ","ಪ","ಫ","ಬ","ಭ","ಮ","ಯ","ರ")),
|
||||
MALAYALAM(
|
||||
new BaseGlyphSetNumber("൦","൧","൨","൩","൪","൫","൬","൭","൮","൯"),
|
||||
new BaseGlyphSetNumber("൦","൧","൨","൩","൪","൫","൬","൭","൮","൯","൰","൱","൲","൳","൴","൵"),
|
||||
new BaseGlyphSetNumber("ക","ഖ","ഗ","ഘ","ങ","ച","ഛ","ജ","ഝ","ഞ","ട","ഠ","ഡ","ഢ","ണ","ത","ഥ","ദ","ധ","ന","പ","ഫ","ബ","ഭ","മ","ർ","ൿ")),
|
||||
THAI(
|
||||
new BaseGlyphSetNumber("๐","๑","๒","๓","๔","๕","๖","๗","๘","๙"),
|
||||
new BaseGlyphSetNumber("๐","๑","๒","๓","๔","๕","๖","๗","๘","๙","ก","ข","ค","ฆ","ง","จ"),
|
||||
new BaseGlyphSetNumber("๑","๒","๓","๔","๕","๖","๗","๘","๙","ก","ข","ค","ฆ","ง","จ","ฉ","ช","ฌ","ญ","ฎ","ฐ","ฑ","ฒ","ณ","ด","ท","ธ")),
|
||||
/* TODO: Brahmi is U+11000–U+1107F and thus unsupported by ImGui
|
||||
BRAHMI(
|
||||
new BaseGlyphSetNumber("𑁦","𑁧","𑁨","𑁩","𑁪","𑁫","𑁬","𑁭","𑁮","𑁯"),
|
||||
new BaseGlyphSetNumber("𑀮","𑀯","𑀰","𑀱","𑀮𑀺","𑀯𑀺","𑀰𑀺","𑀱𑀺","𑀮𑀽","𑀯𑀽","𑀰𑀽","𑀱𑀽","𑀮𑁄","𑀯𑁄","𑀰𑁄","𑀱𑁄"),
|
||||
new BaseGlyphSetNumber("𑀓𑁆","𑀔𑁆","𑀕𑁆","𑀖𑁆","𑀗𑁆","𑀘𑁆","𑀙𑁆","𑀚𑁆","𑀛𑁆","𑀜𑁆","𑀝𑁆","𑀞𑁆","𑀟𑁆","𑀠𑁆","𑀡𑁆","𑀢𑁆","𑀣𑁆","𑀤𑁆","𑀥𑁆","𑀦𑁆","𑀧𑁆","𑀨𑁆","𑀩𑁆","𑀪𑁆","𑀫𑁆","𑀬𑁆","𑀭𑁆")),
|
||||
*/
|
||||
/* TODO: Egyptian hieroglyphs should be mapped 0x13000 to 0x1342E but for now on 0xE000 to 0xE42E (BMP) */
|
||||
HIERO(
|
||||
new BaseGlyphSetNumber("\ue429","\ue3fa","\ue3fb","\ue3fc","\ue3fd","\ue3fe","\ue3ff","\ue400","\ue401","\ue401").withSeperator(BãßBȍőnConstantsʸᴰ.STR_SPACE),
|
||||
new BaseGlyphSetNumber("\ue254","\ue255","\ue256","\ue257","\ue258","\ue259","\ue25a","\ue25b","\ue25c","\ue25d","\ue25e","\ue25f","\ue260","\ue261","\ue262","\ue263").withSeperator(BãßBȍőnConstantsʸᴰ.STR_SPACE),
|
||||
new BaseGlyphSetNumber(
|
||||
"\ue3fa","\ue3fb","\ue3fc","\ue3fd","\ue3fe","\ue3ff","\ue400","\ue401","\ue401",
|
||||
"\ue386","\ue387","\ue388","\ue389","\ue38a","\ue38b","\ue38c","\ue38d","\ue38e",
|
||||
"\ue362","\ue363","\ue364","\ue365","\ue366","\ue367","\ue368","\ue369","\ue36a").withSeperator(BãßBȍőnConstantsʸᴰ.STR_SPACE)
|
||||
),
|
||||
RUNIC(
|
||||
new BaseGlyphSetNumber("ᛰ","ᚠ","ᚢ","ᚦ","ᚬ","ᚱ","ᚴ","ᚼ","ᚾ","ᛁ"),
|
||||
new BaseGlyphSetNumber("ᛰ","ᚠ","ᚢ","ᚦ","ᚬ","ᚱ","ᚴ","ᚼ","ᚾ","ᛁ","ᛅ","ᛋ","ᛏ","ᛒ","ᛚ","ᛘ"),
|
||||
new BaseGlyphSetNumber("ᚠ","ᚢ","ᚦ","ᚨ","ᚱ","ᚲ","ᚷ","ᚹ","ᚺ","ᚾ","ᛁ","ᛃ","ᛇ","ᛈ","ᛉ","ᛊ","ᛏ","ᛒ","ᛖ","ᛗ","ᛚ","ᛜ","ᛟ","ᛞ","ᚡ","ᚤ","ᚧ")),
|
||||
KOREAN(
|
||||
new BaseGlyphSetNumber("영","일","이","삼","사","오","육","칠","팔","구"),
|
||||
new BaseGlyphSetNumber("𝍠","𝍡","𝍢","𝍣","𝍤","𝍥","𝍦","𝍧","𝍨","𝍩","𝍪","𝍫","𝍬","𝍭","𝍮","𝍯"),
|
||||
new BaseGlyphSetNumber("ㄱ","ㄲ","ㄴ","ㄷ","ㄸ","ㄹ","ㅁ","ㅂ","ㅃ","ㅅ","ㅆ","ㅈ","ㅉ","ㅊ","ㅋ","ㅌ","ㅍ","ㅎ","ㄵ","ㄶ","ㄺ","ㄻ","ㄼ","ㄽ","ㄾ","ㄿ","ㅀ")),
|
||||
|
||||
CHINA(
|
||||
new BaseGlyphSetNumber("零","一","二","三","四","五","六","七","八","九"),
|
||||
new BaseGlyphSetNumber("䷀", "䷁", "䷂", "䷃", "䷄", "䷅", "䷆", "䷇", "䷈", "䷉", "䷊", "䷋", "䷌", "䷍", "䷎", "䷏"),
|
||||
new BaseGlyphSetNumber("𝌁","𝌂","𝌃","𝌄","𝌅","𝌆","𝌇","𝌈","𝌉","𝌊","𝌋","𝌌","𝌍","𝌎","𝌏","𝌐","𝌑","𝌒","𝌓","𝌔","𝌕","𝌖","𝌗","𝌘","𝌙","𝌚","𝌛")),
|
||||
CHINA_FORMAL(
|
||||
new BaseGlyphSetNumber(v -> T10PartDecimal.PART_1.BãßVoorElk(x -> v.add(x.BȍőnChinaKey()))),
|
||||
null,
|
||||
null),
|
||||
CHINA_FORMAL_OLD(
|
||||
new BaseGlyphSetNumber("零","壹","貳","參","肆","伍","陸","柒","捌","玖"),
|
||||
null,
|
||||
null),
|
||||
JAPAN(
|
||||
CHINA.BȍőnNumber10(),
|
||||
KOREAN.BȍőnNumber16(),
|
||||
null),
|
||||
JAPAN_FORMAL(
|
||||
new BaseGlyphSetNumber("零","壱","弐","参","四","五","六","七","八","九"),
|
||||
null,
|
||||
null),
|
||||
|
||||
CYRILLIC(
|
||||
new BaseGlyphSetNumber("Ф","А","В","Г","Д","Є","Ѕ","З","И","Ѳ"),
|
||||
new BaseGlyphSetNumber("Ф","А","В","Г","Д","Є","Ѕ","З","И","Ѳ","І","К","Л","М","Н","Ѯ"),
|
||||
new BaseGlyphSetNumber("А","В","Г","Д","Є","Ѕ","З","И","Ѳ","І","К","Л","М","Н","Ѯ","Ѻ","П","Ч","Р","С","Т","Ѵ","Ф","Х","Ѱ","Ѿ","Ц")),
|
||||
ARABIC(
|
||||
new BaseGlyphSetNumber("٠","١","٢","٣","٤","٥","٦","٧","٨","٩"),
|
||||
null,
|
||||
new BaseGlyphSetNumber("ا","ب","ج","د","ه","و","ز","ح","ط","ي","ك","ل","م","ن","س","ع","ف","ص","ق","ر","ش","ت","ث","خ","ذ","ض","ظ"),
|
||||
true),
|
||||
HEBREW(
|
||||
new BaseGlyphSetNumber("אֶפֶס","אֶחָד","שְׁתַּיִם","שְׁלֹשָׁה","אַרְבַּע","חֲמִשָּׁה","שֵׁשׁ","שִׁבְעָה","שְׁמוֹנֶה","תִּשְׁעָה").withSeperator(BãßBȍőnConstantsʸᴰ.STR_SPACE),
|
||||
null,
|
||||
new BaseGlyphSetNumber("א","ב","ג","ד","ה","ו","ז","ח","ט","י","כ","ל","מ","נ","ס","ע","פ","צ","ק","ר","ש","ת","ך","ם","ן","ף","ץ"),
|
||||
true),
|
||||
;
|
||||
|
||||
private final GuageCounterᴶᴹˣ printNumber10Count;
|
||||
private final GuageCounterᴶᴹˣ printNumber16Count;
|
||||
private final GuageCounterᴶᴹˣ printNumber27Count;
|
||||
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) {
|
||||
this(numbers, hex, gematria, false);
|
||||
}
|
||||
|
||||
private BaseGlyphSet(BaseGlyphSetNumber numbers, BaseGlyphSetNumber hex, BaseGlyphSetNumber gematria, Boolean reverseScript) {
|
||||
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.PUT_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.REVERSE_SCRIPT, reverseScript); // TODO: ImGui workaround
|
||||
BBC.BOON_INIT(this);
|
||||
this.BȍőnJmxInit(BãßBȍőnGlyphSetKeyʸᴰ.JMX);
|
||||
printNumber10Count = BȍőnJmxInitGuageCounter(BãßBȍőnGlyphSetKeyʸᴰ.JMX, "printNumber10Count");
|
||||
printNumber16Count = BȍőnJmxInitGuageCounter(BãßBȍőnGlyphSetKeyʸᴰ.JMX, "printNumber16Count");
|
||||
printNumber27Count = BȍőnJmxInitGuageCounter(BãßBȍőnGlyphSetKeyʸᴰ.JMX, "printNumber27Count");
|
||||
}
|
||||
|
||||
public BaseGlyphSetNumber BȍőnNumber10() {
|
||||
return GET_BBC().GET_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.NUMBERS, BaseGlyphSetNumber.class);
|
||||
}
|
||||
|
||||
public BaseGlyphSetNumber BȍőnNumber16() {
|
||||
return GET_BBC().GET_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.HEXIMALS, BaseGlyphSetNumber.class);
|
||||
}
|
||||
|
||||
public BaseGlyphSetNumber BȍőnNumber27() {
|
||||
return GET_BBC().GET_OBJ(BãßBȍőnGlyphSetKeyʸᴰ.GEMATRIA, BaseGlyphSetNumber.class);
|
||||
}
|
||||
|
||||
public Boolean BȍőnReverseScript() {
|
||||
return GET_BBC().GET_BOOL(BãßBȍőnGlyphSetKeyʸᴰ.REVERSE_SCRIPT);
|
||||
}
|
||||
|
||||
public String BȍőnConvertTo(String numbers) {
|
||||
StringBuilder buf = new StringBuilder();
|
||||
for (char c:numbers.toCharArray()) {
|
||||
for (BaseGlyphSet set:values()) {
|
||||
int loc = set.BȍőnNumber10().BȍőnIndexOf(""+c);
|
||||
if (loc != -1) {
|
||||
buf.append(set.BȍőnNumber10().BȍőnCharFor(loc));
|
||||
}
|
||||
}
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
public String BȍőnPrintNumber10(int number, int numberMax) {
|
||||
printNumber10Count.increment();
|
||||
String maxDigitNumber = Integer.toString(numberMax);
|
||||
StringBuilder maxDigitFormat = new StringBuilder();
|
||||
for (int i=0;i<maxDigitNumber.length();i++) {
|
||||
maxDigitFormat.append("0");
|
||||
}
|
||||
String numberStr = new DecimalFormat(maxDigitFormat.toString()).format(number);
|
||||
StringBuilder buf = new StringBuilder();
|
||||
for (int i=0;i<numberStr.length();i++) {
|
||||
char c = numberStr.charAt(i);
|
||||
int numberDigit = c - '0';
|
||||
buf.append(BȍőnNumber10().BȍőnCharFor(numberDigit));
|
||||
if (i<numberStr.length() - 1) {
|
||||
buf.append(BȍőnNumber10().BȍőnCharSeperator());
|
||||
}
|
||||
}
|
||||
if (BȍőnReverseScript()) {
|
||||
return buf.reverse().toString();
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
public String BȍőnPrintNumber16(int number, int numberMax) {
|
||||
printNumber16Count.increment();
|
||||
String maxDigitNumber = Integer.toHexString(numberMax);
|
||||
String numberStr = Integer.toHexString(number);
|
||||
StringBuilder buf = new StringBuilder();
|
||||
BaseGlyphSet printSet = this;
|
||||
for (int i=numberStr.length();i<maxDigitNumber.length();i++) {
|
||||
buf.append(printSet.BȍőnNumber16().BȍőnCharFor(0));
|
||||
if (i==numberStr.length() && BȍőnNumber16().BȍőnAltGlyphSet() != null) {
|
||||
printSet = BȍőnNumber16().BȍőnAltGlyphSet();
|
||||
}
|
||||
}
|
||||
for (int i=0;i<numberStr.length();i++) {
|
||||
char c = numberStr.charAt(i);
|
||||
int numberDigit = 0;
|
||||
if (c >= 'a') {
|
||||
numberDigit = c - 'a' + 10;
|
||||
} else {
|
||||
numberDigit = c - '0';
|
||||
}
|
||||
buf.append(printSet.BȍőnNumber16().BȍőnCharFor(numberDigit));
|
||||
if (i<numberStr.length() - 1) {
|
||||
buf.append(printSet.BȍőnNumber16().BȍőnCharSeperator());
|
||||
}
|
||||
if (i==0 && BȍőnNumber16().BȍőnAltGlyphSet() != null) {
|
||||
printSet = BȍőnNumber16().BȍőnAltGlyphSet();
|
||||
}
|
||||
}
|
||||
if (BȍőnReverseScript()) {
|
||||
return buf.reverse().toString();
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
public String BȍőnPrintNumber27(int number, int numberMax) {
|
||||
printNumber27Count.increment();
|
||||
String maxDigitNumber = Integer.toString(numberMax, 27);
|
||||
String numberStr = Integer.toString(number, 27);
|
||||
StringBuilder buf = new StringBuilder();
|
||||
BaseGlyphSet printSet = this;
|
||||
for (int i=numberStr.length();i<maxDigitNumber.length();i++) {
|
||||
buf.append(printSet.BȍőnNumber27().BȍőnCharFor(0));
|
||||
if (i==numberStr.length() && BȍőnNumber27().BȍőnAltGlyphSet() != null) {
|
||||
printSet = BȍőnNumber27().BȍőnAltGlyphSet();
|
||||
}
|
||||
}
|
||||
for (int i=0;i<numberStr.length();i++) {
|
||||
char c = numberStr.charAt(i);
|
||||
int numberDigit = 0;
|
||||
if (c >= 'a') {
|
||||
numberDigit = c - 'a' + 10;
|
||||
} else {
|
||||
numberDigit = c - '0';
|
||||
}
|
||||
buf.append(printSet.BȍőnNumber27().BȍőnCharFor(numberDigit));
|
||||
if (i<numberStr.length() - 1) {
|
||||
buf.append(printSet.BȍőnNumber27().BȍőnCharSeperator());
|
||||
}
|
||||
if (i==0 && BȍőnNumber27().BȍőnAltGlyphSet() != null) {
|
||||
printSet = BȍőnNumber27().BȍőnAltGlyphSet();
|
||||
}
|
||||
}
|
||||
if (BȍőnReverseScript()) {
|
||||
return buf.reverse().toString();
|
||||
}
|
||||
return buf.toString();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,189 @@
|
|||
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(List<String> chars) {
|
||||
this.chars.addAll(chars);
|
||||
}
|
||||
|
||||
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) {
|
||||
BaseGlyphSetNumber result = new BaseGlyphSetNumber(chars);
|
||||
result.altGlyphSet = altGlyphSet;
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
public BaseGlyphSetNumber withSeperator(String charSeperator) {
|
||||
BaseGlyphSetNumber result = new BaseGlyphSetNumber(chars);
|
||||
result.charSeperator = charSeperator;
|
||||
return result;
|
||||
}
|
||||
|
||||
public String BȍőnCharFor(int number) {
|
||||
return chars.get(number);
|
||||
}
|
||||
|
||||
public int BȍőnIndexOf(String str) {
|
||||
return chars.indexOf(str);
|
||||
}
|
||||
|
||||
public String BȍőnCharSeperator() {
|
||||
return charSeperator;
|
||||
}
|
||||
|
||||
public BaseGlyphSet BȍőnAltGlyphSet() {
|
||||
return altGlyphSet;
|
||||
}
|
||||
|
||||
public String BȍőnCharFor27(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,16 @@
|
|||
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,
|
||||
REVERSE_SCRIPT
|
||||
;
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package love.distributedrebirth.numberxd.x4o;
|
||||
|
||||
import java.util.Locale;
|
||||
|
||||
import org.x4o.xml.conv.AbstractStringObjectConverter;
|
||||
import org.x4o.xml.conv.ObjectConverter;
|
||||
import org.x4o.xml.conv.ObjectConverterException;
|
||||
|
||||
import love.distributedrebirth.numberxd.base2t.part.BãßBȍőnPartʸᴰ;
|
||||
|
||||
public class BãßBȍőnPartDialToneConverter extends AbstractStringObjectConverter {
|
||||
|
||||
private static final long serialVersionUID = -6130905265398185836L;
|
||||
private final BãßBȍőnPartʸᴰ<?> basePart;
|
||||
|
||||
public BãßBȍőnPartDialToneConverter(BãßBȍőnPartʸᴰ<?> basePart) {
|
||||
this.basePart = basePart;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<?> getObjectClassTo() {
|
||||
return basePart.getClass();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String convertStringBack(Object obj, Locale locale) throws ObjectConverterException {
|
||||
return BãßBȍőnPartʸᴰ.class.cast(obj).BȍőnDialTone();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object convertStringTo(String str, Locale locale) throws ObjectConverterException {
|
||||
return basePart.BãßValueOfDialTone(str);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ObjectConverter clone() throws CloneNotSupportedException {
|
||||
return new BãßBȍőnPartDialToneConverter(basePart);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,187 @@
|
|||
package love.distributedrebirth.numberxd.x4o;
|
||||
|
||||
import org.x4o.xml.conv.ObjectConverter;
|
||||
import org.x4o.xml.eld.lang.ModuleElement;
|
||||
import org.x4o.xml.element.ElementBindingHandler;
|
||||
import org.x4o.xml.element.ElementClass;
|
||||
import org.x4o.xml.element.ElementClassAttribute;
|
||||
import org.x4o.xml.element.ElementNamespace;
|
||||
import org.x4o.xml.element.ElementNamespaceInstanceProvider;
|
||||
import org.x4o.xml.element.ElementNamespaceInstanceProviderException;
|
||||
import org.x4o.xml.lang.X4OLanguage;
|
||||
import org.x4o.xml.lang.X4OLanguageClassLoader;
|
||||
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ʸᴰ;
|
||||
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.type.V006Tixte;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V018Tord;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V036Teger;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V072Tong;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class NumberXDModuleLoader implements X4OLanguageModuleLoader {
|
||||
|
||||
private static final String PP_NXD_PROVIDER_HOST = "unicode4d.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_DATA = "d";
|
||||
//private static final String NXD_ROOT = "nxd-root";
|
||||
private static final String NXD_DATA_XSD_FILE = NXD_DATA+PP_NXD_XSD_FILE;
|
||||
//private static final String NXD_ROOT_XSD_FILE = NXD_ROOT+PP_NXD_XSD_FILE;
|
||||
public static final String NXD_DATA_URI = PP_NXD_XMLNS+NXD_DATA;
|
||||
//public static final String NXD_ROOT_URI = PP_NXD_XMLNS+NXD_ROOT;
|
||||
public static final String NXD_DATA_XSD_URI = NXD_DATA_URI+PP_NXD_XSD_FILE;
|
||||
//public static final String NXD_ROOT_XSD_URI = NXD_ROOT_URI+PP_NXD_XSD_FILE;
|
||||
|
||||
@Override
|
||||
public void loadLanguageModule(X4OLanguageLocal language, X4OLanguageModuleLocal languageModule) throws X4OLanguageModuleLoaderException {
|
||||
languageModule.setId("nxd-module");
|
||||
languageModule.setProviderName("Number eXtra Dimension Module");
|
||||
languageModule.setProviderHost(PP_NXD_PROVIDER_HOST);
|
||||
languageModule.setDescription("Number eXtra Dimension Module Loader");
|
||||
|
||||
addBindingHandler(languageModule,new V072TongBindingHandler(),"v072-bind","Binds the V072Tong childeren.");
|
||||
addBindingHandler(languageModule,new V072TongP1BindingHandler(),"v072P1-bind","Binds the V072TongP1 childeren.");
|
||||
addBindingHandler(languageModule,new V072TongP2BindingHandler(),"v072P2-bind","Binds the V072TongP2 childeren.");
|
||||
|
||||
/*
|
||||
ElementNamespace namespaceRoot = createNamespaceContext(language,NXD_ROOT,NXD_ROOT_URI,NXD_ROOT_XSD_URI,NXD_ROOT_XSD_FILE,NXD_ROOT);
|
||||
namespaceRoot.setLanguageRoot(true); // Only define single language root so xsd is (mostly) not cicle import.
|
||||
ElementClass rootElement = createElementClass(language,"module",language.getLanguageConfiguration().getDefaultElementLanguageModule(),ModuleElement.class,"The module tag is the root xml element for ELD language.");
|
||||
rootElement.addElementClassAttribute(createElementClassAttribute(language,"id",true,null));
|
||||
rootElement.addElementClassAttribute(createElementClassAttribute(language,"providerHost",true,null));
|
||||
namespaceRoot.addElementClass(rootElement);
|
||||
startAndAddNamespace(language,languageModule,namespaceRoot);
|
||||
*/
|
||||
|
||||
ElementNamespace namespace = createNamespaceContext(language,NXD_DATA,NXD_DATA_URI,NXD_DATA_XSD_URI,NXD_DATA_XSD_FILE,NXD_DATA);
|
||||
configElementClasses(language,namespace);
|
||||
startAndAddNamespace(language,languageModule,namespace);
|
||||
}
|
||||
|
||||
private void configElementClasses(X4OLanguage language,ElementNamespace namespace) throws X4OLanguageModuleLoaderException {
|
||||
ElementClass ec = null;
|
||||
|
||||
ec = createElementClass(language,"v006",V006Tixte.class,null,"Defines an V006Tixte number.");
|
||||
//configBãßBȍőnPartAttributes(language, ec, T02PartBinary.PART_1);
|
||||
namespace.addElementClass(ec);
|
||||
|
||||
ec = createElementClass(language,"v009",V009Tyte.class,null,"Defines an V009Tyte number.");
|
||||
//configBãßBȍőnPartAttributes(language, ec, T03PartTrit.PART_1);
|
||||
namespace.addElementClass(ec);
|
||||
|
||||
ec = createElementClass(language,"v018",V018Tord.class,null,"Defines an V018Tord number.");
|
||||
//configBãßBȍőnPartAttributes(language, ec, T02PartBinary.PART_1);
|
||||
namespace.addElementClass(ec);
|
||||
|
||||
ec = createElementClass(language,"陸",V036Teger.class,null,"Defines an V036Teger number.");
|
||||
//configBãßBȍőnPartAttributes(language, ec, T02PartBinary.PART_1);
|
||||
namespace.addElementClass(ec);
|
||||
|
||||
ec = createElementClass(language,"參",V072Tong.class,null,"Defines an V072Tong number.");
|
||||
//configBãßBȍőnPartAttributes(language, ec, T02PartBinary.PART_1);
|
||||
namespace.addElementClass(ec);
|
||||
|
||||
ec = createElementClass(language,"肆",V072TongP1.class,null,"Defines an V072TongP1 number.");
|
||||
//configBãßBȍőnPartAttributes(language, ec, T02PartBinary.PART_1);
|
||||
namespace.addElementClass(ec);
|
||||
|
||||
ec = createElementClass(language,"伍",V072TongP2.class,null,"Defines an V072TongP1 number.");
|
||||
//configBãßBȍőnPartAttributes(language, ec, T02PartBinary.PART_1);
|
||||
namespace.addElementClass(ec);
|
||||
|
||||
|
||||
ec = createElementClass(language,"v144",V144Tocta.class,null,"Defines an V144Tocta number.");
|
||||
//configBãßBȍőnPartAttributes(language, ec, T02PartBinary.PART_1);
|
||||
namespace.addElementClass(ec);
|
||||
}
|
||||
|
||||
private void configBãßBȍőnPartAttributes(X4OLanguage language,ElementClass ec, BãßBȍőnPartʸᴰ<?> basePart) throws X4OLanguageModuleLoaderException {
|
||||
for (BãßBȍőnPartʸᴰ<?> part: basePart.BãßInstances()) {
|
||||
ec.addElementClassAttribute(createElementClassAttribute(language,part.BȍőnChinaKey(),true,new BãßBȍőnPartDialToneConverter(part)));
|
||||
}
|
||||
}
|
||||
|
||||
private void startAndAddNamespace(X4OLanguageLocal language,X4OLanguageModuleLocal languageModule,ElementNamespace namespace) throws X4OLanguageModuleLoaderException {
|
||||
try {
|
||||
namespace.getElementNamespaceInstanceProvider().start(language, namespace);
|
||||
} catch (ElementNamespaceInstanceProviderException e) {
|
||||
throw new X4OLanguageModuleLoaderException(this,"Error starting instance provider: "+e.getMessage(),e);
|
||||
}
|
||||
languageModule.addElementNamespace(namespace);
|
||||
}
|
||||
|
||||
private ElementClassAttribute createElementClassAttribute(X4OLanguage language,String name,boolean required,ObjectConverter converter) throws X4OLanguageModuleLoaderException {
|
||||
try {
|
||||
ElementClassAttribute result = (ElementClassAttribute)X4OLanguageClassLoader.newInstance(language.getLanguageConfiguration().getDefaultElementClassAttribute());
|
||||
result.setId(name);
|
||||
if (required) {
|
||||
result.setRequired(required);
|
||||
}
|
||||
if (converter!=null) {
|
||||
result.setObjectConverter(converter);
|
||||
}
|
||||
return result;
|
||||
} catch (InstantiationException e) {
|
||||
throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e);
|
||||
} catch (IllegalAccessException e) {
|
||||
throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e);
|
||||
}
|
||||
}
|
||||
|
||||
private ElementClass createElementClass(X4OLanguage language,String tag,Class<?> objectClass,Class<?> elementClass,String description) throws X4OLanguageModuleLoaderException {
|
||||
try {
|
||||
ElementClass result = (ElementClass)X4OLanguageClassLoader.newInstance(language.getLanguageConfiguration().getDefaultElementClass());
|
||||
result.setId(tag);
|
||||
result.setObjectClass(objectClass);
|
||||
result.setElementClass(elementClass);
|
||||
result.setDescription(description);
|
||||
return result;
|
||||
} catch (InstantiationException e) {
|
||||
throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e);
|
||||
} catch (IllegalAccessException e) {
|
||||
throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e);
|
||||
}
|
||||
}
|
||||
|
||||
private ElementNamespace createNamespaceContext(X4OLanguageLocal language,String id,String uri,String schemaUri,String schemaResource,String schemaPrefix) throws X4OLanguageModuleLoaderException {
|
||||
ElementNamespace namespace;
|
||||
try {
|
||||
namespace = (ElementNamespace)X4OLanguageClassLoader.newInstance(language.getLanguageConfiguration().getDefaultElementNamespace());
|
||||
} catch (InstantiationException e) {
|
||||
throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e);
|
||||
} catch (IllegalAccessException e) {
|
||||
throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e);
|
||||
}
|
||||
try {
|
||||
namespace.setElementNamespaceInstanceProvider((ElementNamespaceInstanceProvider)
|
||||
X4OLanguageClassLoader.newInstance(language.getLanguageConfiguration().getDefaultElementNamespaceInstanceProvider())
|
||||
);
|
||||
} catch (InstantiationException e) {
|
||||
throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e);
|
||||
} catch (IllegalAccessException e) {
|
||||
throw new X4OLanguageModuleLoaderException(this,e.getMessage(),e);
|
||||
}
|
||||
|
||||
namespace.setId(id);
|
||||
namespace.setUri(uri);
|
||||
namespace.setSchemaUri(schemaUri);
|
||||
namespace.setSchemaResource(schemaResource);
|
||||
namespace.setSchemaPrefix(schemaPrefix);
|
||||
return namespace;
|
||||
}
|
||||
|
||||
private void addBindingHandler(X4OLanguageModuleLocal languageModule,ElementBindingHandler handler,String id,String description) {
|
||||
handler.setId(id);
|
||||
handler.setDescription(description);
|
||||
languageModule.addElementBindingHandler(handler);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
package love.distributedrebirth.numberxd.x4o;
|
||||
|
||||
import org.x4o.xml.element.AbstractElementBindingHandler;
|
||||
import org.x4o.xml.element.Element;
|
||||
import org.x4o.xml.element.ElementBindingHandlerException;
|
||||
|
||||
import love.distributedrebirth.numberxd.base2t.part.T02PartBinary;
|
||||
import love.distributedrebirth.numberxd.base2t.type.V072Tong;
|
||||
|
||||
public class V072TongBindingHandler extends AbstractElementBindingHandler<V072Tong> {
|
||||
|
||||
@Override
|
||||
public Class<?>[] getBindChildClasses() {
|
||||
return new Class[] {V072TongP1.class, V072TongP2.class};
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<?> getBindParentClass() {
|
||||
return V072Tong.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindChild(Element childElement, V072Tong parent, Object childObject) throws ElementBindingHandlerException {
|
||||
if (childObject instanceof V072TongP1) {
|
||||
V072TongP1 p1 = (V072TongP1)childObject;
|
||||
parent.setValue(T02PartBinary.PART_1, p1.theValue());
|
||||
}
|
||||
if (childObject instanceof V072TongP2) {
|
||||
V072TongP2 p2 = (V072TongP2)childObject;
|
||||
parent.setValue(T02PartBinary.PART_2, p2.theValue());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void createChilderen(Element parentElement,V072Tong parent) throws ElementBindingHandlerException {
|
||||
V072TongP1 p1 = new V072TongP1();
|
||||
V072TongP2 p2 = new V072TongP2();
|
||||
p1.setValue(parent.getValue(T02PartBinary.PART_1));
|
||||
p2.setValue(parent.getValue(T02PartBinary.PART_2));
|
||||
createChild(parentElement, p1);
|
||||
createChild(parentElement, p2);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
package love.distributedrebirth.numberxd.x4o;
|
||||
|
||||
import love.distributedrebirth.numberxd.base2t.type.V036Teger;
|
||||
|
||||
public class V072TongP1 {
|
||||
|
||||
private V036Teger value;
|
||||
|
||||
public V036Teger theValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(V036Teger value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
package love.distributedrebirth.numberxd.x4o;
|
||||
|
||||
import org.x4o.xml.element.AbstractElementBindingHandler;
|
||||
import org.x4o.xml.element.Element;
|
||||
import org.x4o.xml.element.ElementBindingHandlerException;
|
||||
|
||||
import love.distributedrebirth.numberxd.base2t.type.V036Teger;
|
||||
|
||||
public class V072TongP1BindingHandler extends AbstractElementBindingHandler<V072TongP1> {
|
||||
|
||||
@Override
|
||||
public Class<?>[] getBindChildClasses() {
|
||||
return new Class[] {V036Teger.class};
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<?> getBindParentClass() {
|
||||
return V072TongP1.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindChild(Element childElement, V072TongP1 parent, Object childObject) throws ElementBindingHandlerException {
|
||||
V036Teger child = (V036Teger)childObject;
|
||||
parent.setValue(child);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void createChilderen(Element parentElement,V072TongP1 parent) throws ElementBindingHandlerException {
|
||||
createChild(parentElement, parent.theValue());
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
package love.distributedrebirth.numberxd.x4o;
|
||||
|
||||
import love.distributedrebirth.numberxd.base2t.type.V036Teger;
|
||||
|
||||
public class V072TongP2 {
|
||||
|
||||
private V036Teger value;
|
||||
|
||||
public V036Teger theValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(V036Teger value) {
|
||||
this.value = value;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
package love.distributedrebirth.numberxd.x4o;
|
||||
|
||||
import org.x4o.xml.element.AbstractElementBindingHandler;
|
||||
import org.x4o.xml.element.Element;
|
||||
import org.x4o.xml.element.ElementBindingHandlerException;
|
||||
|
||||
import love.distributedrebirth.numberxd.base2t.type.V036Teger;
|
||||
|
||||
public class V072TongP2BindingHandler extends AbstractElementBindingHandler<V072TongP2> {
|
||||
|
||||
@Override
|
||||
public Class<?>[] getBindChildClasses() {
|
||||
return new Class[] {V036Teger.class};
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<?> getBindParentClass() {
|
||||
return V072TongP2.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void bindChild(Element childElement, V072TongP2 parent, Object childObject) throws ElementBindingHandlerException {
|
||||
V036Teger child = (V036Teger)childObject;
|
||||
parent.setValue(child);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void createChilderen(Element parentElement,V072TongP2 parent) throws ElementBindingHandlerException {
|
||||
createChild(parentElement, parent.theValue());
|
||||
}
|
||||
}
|
||||
|
|
@ -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,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<drivers version="1.0"
|
||||
xmlns="http://language.x4o.org/xml/ns/drivers"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://language.x4o.org/xml/ns/drivers http://language.x4o.org/xml/ns/drivers-1.0.xsd"
|
||||
>
|
||||
<defaultDriver language="numberxd"/>
|
||||
</drivers>
|
||||
|
|
@ -0,0 +1,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 = Base2PartsFactory.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:Base2PartsFactory.INSTANCE.BãßBases()) {
|
||||
for (BãßBȍőnPartʸᴰ<?> part:Base2PartsFactory.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:Base2PartsFactory.INSTANCE.BãßBases()) {
|
||||
for (BãßBȍőnPartʸᴰ<?> part:Base2PartsFactory.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:Base2PartsFactory.INSTANCE.BãßBases()) {
|
||||
for (BãßBȍőnPartʸᴰ<?> part:Base2PartsFactory.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("南"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,38 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T05PartPental;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T05PartPentalTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T05PartPental value:T05PartPental.values()) {
|
||||
Assertions.assertNotNull(value.BȍőnDialTone());
|
||||
Assertions.assertNotNull(value.BȍőnChinaKey());
|
||||
Assertions.assertNotNull(value.BȍőnChinaValue());
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testToneMap() {
|
||||
Assertions.assertEquals(T05PartPental.PART_1, T05PartPental.PART_1.BãßValueOfDialTone("˥"));
|
||||
Assertions.assertEquals(T05PartPental.PART_2, T05PartPental.PART_1.BãßValueOfDialTone("˦"));
|
||||
Assertions.assertEquals(T05PartPental.PART_3, T05PartPental.PART_1.BãßValueOfDialTone("˧"));
|
||||
Assertions.assertEquals(T05PartPental.PART_4, T05PartPental.PART_1.BãßValueOfDialTone("˨"));
|
||||
Assertions.assertEquals(T05PartPental.PART_5, T05PartPental.PART_1.BãßValueOfDialTone("˩"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T05PartPental.PART_1, T05PartPental.PART_1.BãßValueOfChinaKey("火"));
|
||||
Assertions.assertEquals(T05PartPental.PART_2, T05PartPental.PART_1.BãßValueOfChinaKey("水"));
|
||||
Assertions.assertEquals(T05PartPental.PART_3, T05PartPental.PART_1.BãßValueOfChinaKey("木"));
|
||||
Assertions.assertEquals(T05PartPental.PART_4, T05PartPental.PART_1.BãßValueOfChinaKey("金"));
|
||||
Assertions.assertEquals(T05PartPental.PART_5, T05PartPental.PART_1.BãßValueOfChinaKey("土"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T06PartSeximal;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T06PartSeximalTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T06PartSeximal value:T06PartSeximal.values()) {
|
||||
Assertions.assertNotNull(value.Bȍő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 testToneMap() {
|
||||
Assertions.assertEquals(T06PartSeximal.PART_1, T06PartSeximal.PART_1.BãßValueOfDialTone("˦"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_2, T06PartSeximal.PART_1.BãßValueOfDialTone("˨"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_5, T06PartSeximal.PART_1.BãßValueOfDialTone("꜊"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_6, T06PartSeximal.PART_1.BãßValueOfDialTone("꜏"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T06PartSeximal.PART_1, T06PartSeximal.PART_1.BãßValueOfChinaKey("四"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_2, T06PartSeximal.PART_1.BãßValueOfChinaKey("五"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_5, T06PartSeximal.PART_1.BãßValueOfChinaKey("八"));
|
||||
Assertions.assertEquals(T06PartSeximal.PART_6, T06PartSeximal.PART_1.BãßValueOfChinaKey("九"));
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package love.distributedrebirth.numberxd.base2t;
|
||||
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
|
||||
import love.distributedrebirth.numberxd.base2t.part.T07PartPlanIt;
|
||||
|
||||
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
|
||||
public class T07PartPlanItTest {
|
||||
|
||||
@Test
|
||||
public void testBasePart() {
|
||||
for (T07PartPlanIt value:T07PartPlanIt.values()) {
|
||||
Assertions.assertNotNull(value.Bȍő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 testToneMap() {
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_1, T07PartPlanIt.PART_1.BãßValueOfDialTone("˥"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_2, T07PartPlanIt.PART_1.BãßValueOfDialTone("꜉"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_6, T07PartPlanIt.PART_1.BãßValueOfDialTone("꜐"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_7, T07PartPlanIt.PART_1.BãßValueOfDialTone("˩"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testChinaMap() {
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_1, T07PartPlanIt.PART_1.BãßValueOfChinaKey("♎︎"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_2, T07PartPlanIt.PART_1.BãßValueOfChinaKey("♏︎"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_6, T07PartPlanIt.PART_1.BãßValueOfChinaKey("♑︎"));
|
||||
Assertions.assertEquals(T07PartPlanIt.PART_7, T07PartPlanIt.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