Impl BaseGetậl

This commit is contained in:
Willem Cazander 2022-02-04 18:00:03 +01:00
parent 540fa0b72a
commit c98cdf4d10
42 changed files with 861 additions and 552 deletions

View file

@ -43,7 +43,7 @@ public class HebrewWalletRenderer extends ImGuiRendererMain {
}; };
for (String data:walletData) { for (String data:walletData) {
Gê̄ldGetậl geld = new Gê̄ldGetậl(data); Gê̄ldGetậl geld = new Gê̄ldGetậl(data);
Gê̄ldGetậl geld2 = new Gê̄ldGetậl(geld.toTeger().toClone().toClone()); // unit test Gê̄ldGetậl geld2 = geld.toClone(); // unit test
ImGui.tableNextRow(); ImGui.tableNextRow();
ImGui.tableNextColumn(); ImGui.tableNextColumn();
ImGui.text(data.length()==2||data.length()==3?"OUT":"IN"); ImGui.text(data.length()==2||data.length()==3?"OUT":"IN");

View file

@ -0,0 +1,20 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseNumber;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
abstract public class AbstractBaseGetậlLevel0<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> implements BaseGetậlLevel0<T,V> {
protected int valueIndex0;
@Override
public void setValueIndex0(int valueIndex0) {
this.valueIndex0 = valueIndex0;
}
@Override
public int getValueIndex0() {
return valueIndex0;
}
}

View file

@ -0,0 +1,20 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseNumber;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
abstract public class AbstractBaseGetậlLevel1<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlLevel0<T,V> implements BaseGetậlLevel1<T,V> {
protected int valueIndex1;
@Override
public void setValueIndex1(int valueIndex1) {
this.valueIndex1 = valueIndex1;
}
@Override
public int getValueIndex1() {
return valueIndex1;
}
}

View file

@ -0,0 +1,20 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseNumber;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
abstract public class AbstractBaseGetậlLevel2<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends AbstractBaseGetậlLevel1<T,V> implements BaseGetậlLevel2<T,V> {
protected int valueIndex2;
@Override
public void setValueIndex2(int valueIndex1) {
this.valueIndex1 = valueIndex1;
}
@Override
public int getValueIndex2() {
return valueIndex1;
}
}

View file

@ -0,0 +1,53 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
abstract public class AbstractGroßGetậlŌṁ1ⁿᴰ<T extends BaseGetậl<T,V009Tyte>> extends AbstractBaseGetậlLevel1<T,V009Tyte> {
private V144Tocta[] values;
private int valuesLength;
private byte fractalLevel;
public AbstractGroßGetậlŌṁ1ⁿᴰ(byte fractalLevel) {
this.fractalLevel = fractalLevel;
this.valuesLength = resolveFractalLevel(fractalLevel);
this.values = new V144Tocta[valuesLength];
for (int i=0;i<this.values.length;i++) {
this.values[i] = new V144Tocta();
}
}
public AbstractGroßGetậlŌṁ1ⁿᴰ(byte fractalLevel, BaseIteratorOctal values) {
this.fractalLevel = fractalLevel;
this.valuesLength = resolveFractalLevel(fractalLevel);
this.values = new V144Tocta[valuesLength];
for (int i=0;i<this.values.length;i++) {
this.values[i] = new V144Tocta(values);
}
}
abstract protected int resolveFractalLevel(byte level);
public V009Tyte getValue() {
return values[valueIndex1].getTytePart(T16PartHex.values()[valueIndex0]);
}
public byte getFractalLevel() {
return fractalLevel;
}
@Override
public int getValueIndex0Length() {
return T16PartHex.LENGTH();
}
@Override
public int getValueIndex1Length() {
return valuesLength;
}
}

View file

@ -0,0 +1,63 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.part.T12PartUncial;
import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
abstract public class AbstractGroßGetậlŌṁ6ˢᴰ<T extends BaseGetậl<T,V009Tyte>> extends AbstractBaseGetậlLevel2<T,V009Tyte> {
private V144Tocta[][] values;
private int valuesLength;
private byte fractalLevel;
public AbstractGroßGetậlŌṁ6ˢᴰ(byte fractalLevel) {
this.fractalLevel = fractalLevel;
this.valuesLength = resolveFractalLevel(fractalLevel);
this.values = new V144Tocta[T12PartUncial.LENGTH()][valuesLength];
for (int x=0;x<this.values.length;x++) {
for (int y=0;y<this.values[x].length;y++) {
this.values[x][y] = new V144Tocta();
}
}
}
public AbstractGroßGetậlŌṁ6ˢᴰ(byte fractalLevel, BaseIteratorOctal values) {
this.fractalLevel = fractalLevel;
this.valuesLength = resolveFractalLevel(fractalLevel);
this.values = new V144Tocta[T12PartUncial.LENGTH()][valuesLength];
for (int x=0;x<this.values.length;x++) {
for (int y=0;y<this.values[x].length;y++) {
this.values[x][y] = new V144Tocta(values);
}
}
}
abstract protected int resolveFractalLevel(byte level);
public V009Tyte getValue() {
return values[valueIndex1][valueIndex2].getTytePart(T16PartHex.values()[valueIndex0]);
}
public byte getFractalLevel() {
return fractalLevel;
}
@Override
public int getValueIndex0Length() {
return T16PartHex.LENGTH();
}
@Override
public int getValueIndex1Length() {
return T12PartUncial.LENGTH();
}
@Override
public int getValueIndex2Length() {
return valuesLength;
}
}

View file

@ -1,13 +1,12 @@
package love.distributedrebirth.numberxd; package love.distributedrebirth.numberxd;
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte; import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseNumber;
/**
*
*
* @author willemtsade ©Δ 仙上主天
*/
public interface BaseGetậl<V extends BaseNumberTyte<V>> extends BaseNumberTyte<V> {
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public interface BaseGetậl<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> {
V getValue();
T toClone();
} }

View file

@ -0,0 +1,14 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseNumber;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public interface BaseGetậlLevel0<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậl<T,V> {
void setValueIndex0(int valueIndex0);
int getValueIndex0();
int getValueIndex0Length();
}

View file

@ -0,0 +1,14 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseNumber;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public interface BaseGetậlLevel1<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlLevel0<T,V> {
void setValueIndex1(int valueIndex1);
int getValueIndex1();
int getValueIndex1Length();
}

View file

@ -0,0 +1,14 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseNumber;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public interface BaseGetậlLevel2<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlLevel1<T,V> {
void setValueIndex2(int valueIndex1);
int getValueIndex2();
int getValueIndex2Length();
}

View file

@ -0,0 +1,14 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseNumber;
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public interface BaseGetậlLevel3<T extends BaseGetậl<T,V>,V extends BaseNumber<V>> extends BaseGetậlLevel2<T,V> {
void setValueIndex3(int valueIndex1);
int getValueIndex3();
int getValueIndex3Length();
}

View file

@ -1,101 +1,53 @@
package love.distributedrebirth.numberxd; package love.distributedrebirth.numberxd;
import java.util.ArrayList; import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import java.util.List;
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal; import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte;
import love.distributedrebirth.numberxd.base2t.BaseIteratorTyte; 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.V009Tyte;
import love.distributedrebirth.numberxd.base2t.type.V090Tocta; import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
/** /**
* Holds an 144 bit fraction. * Holds an 144 bit fraction.
*
* @author willemtsade ©Δ 仙上主天
*/ */
public class GroßGetậl1ⁿᴰ implements BaseGetậl<GroßGetậl1ⁿᴰ> { @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class GroßGetậl1ⁿᴰ extends AbstractBaseGetậlLevel0<GroßGetậl1ⁿᴰ,V009Tyte> {
public static int NUMERATOR_SIZE = 7; //public static int NUMERATOR_SIZE = 7;
public static int DENOMINATOR_SIZE = 9; //public static int DENOMINATOR_SIZE = 9;
public static int BIT_COUNT = V090Tocta.BIT_COUNT; //public static int BIT_COUNT = V144Tocta.BIT_COUNT;
private final V009Tyte[] numerator = new V009Tyte[NUMERATOR_SIZE]; //private final V009Tyte[] numerator = new V009Tyte[NUMERATOR_SIZE];
private final V009Tyte[] denominator = new V009Tyte[DENOMINATOR_SIZE]; //private final V009Tyte[] denominator = new V009Tyte[DENOMINATOR_SIZE];
private final V144Tocta value;
public GroßGetậl1ⁿᴰ() { public GroßGetậl1ⁿᴰ() {
for (int i=0;i<NUMERATOR_SIZE;i++) { this(new V144Tocta());
numerator[i] = new V009Tyte();
}
for (int i=0;i<DENOMINATOR_SIZE;i++) {
denominator[i] = new V009Tyte();
}
} }
public GroßGetậl1ⁿᴰ(BaseIteratorOctal values) { public GroßGetậl1ⁿᴰ(BaseIteratorOctal values) {
for (int i=0;i<NUMERATOR_SIZE;i++) { this(new V144Tocta(values));
numerator[i] = new V009Tyte(values);
}
for (int i=0;i<DENOMINATOR_SIZE;i++) {
denominator[i] = new V009Tyte(values);
}
} }
public GroßGetậl1ⁿᴰ(BaseIteratorTyte values) { public GroßGetậl1ⁿᴰ(BaseIteratorTyte values) {
for (int i=0;i<NUMERATOR_SIZE;i++) { this(new V144Tocta(values));
numerator[i] = values.next();
}
for (int i=0;i<DENOMINATOR_SIZE;i++) {
denominator[i] = values.next();
}
} }
public GroßGetậl1ⁿᴰ(V090Tocta tocta) { public GroßGetậl1ⁿᴰ(V144Tocta value) {
List<V009Tyte> tytes = new ArrayList<>(); this.value = value;
tocta.fillTytesByReference(new BaseAppenderTyte(tytes));
for (int i=0;i<NUMERATOR_SIZE;i++) {
numerator[i] = tytes.get(i);
}
for (int i=0;i<DENOMINATOR_SIZE;i++) {
denominator[i] = tytes.get(i+NUMERATOR_SIZE);
}
} }
public V090Tocta toToctaByReference() {
return new V090Tocta(iteratorTytesByReference());
}
public V090Tocta toToctaByClone() {
return new V090Tocta(iteratorOctalsByClone());
}
@Override @Override
public int getBitCount() { public V009Tyte getValue() {
return V090Tocta.BIT_COUNT; return value.getTytePart(T16PartHex.values()[valueIndex0]);
} }
@Override
public int getValueIndex0Length() {
return T16PartHex.LENGTH();
}
@Override @Override
public GroßGetậl1ⁿᴰ toClone() { public GroßGetậl1ⁿᴰ toClone() {
return new GroßGetậl1ⁿᴰ(iteratorOctalsByClone()); return new GroßGetậl1ⁿᴰ(value.toClone());
}
@Override
public void fillOctalsByClone(BaseAppenderOctal appender) {
for (int i=0;i<NUMERATOR_SIZE;i++) {
numerator[i].fillOctalsByClone(appender);
}
for (int i=0;i<DENOMINATOR_SIZE;i++) {
denominator[i].fillOctalsByClone(appender);
}
}
@Override
public void fillTytesByReference(BaseAppenderTyte appender) {
for (int i=0;i<NUMERATOR_SIZE;i++) {
appender.add(numerator[i]);
}
for (int i=0;i<DENOMINATOR_SIZE;i++) {
appender.add(denominator[i]);
}
} }
} }

View file

@ -1,65 +1,53 @@
package love.distributedrebirth.numberxd; package love.distributedrebirth.numberxd;
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte;
import love.distributedrebirth.numberxd.base2t.part.T12PartUncial; import love.distributedrebirth.numberxd.base2t.part.T12PartUncial;
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal; 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.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte; import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
import love.distributedrebirth.numberxd.base2t.BaseIteratorTyte;
/** /**
* Holds an 864 bit fraction. * Holds an 864 bit fraction.
*
* @author willemtsade ©Δ 仙上主天
*/ */
public class GroßGetậl6ˢᴰ implements BaseNumberTyte<GroßGetậl6ˢᴰ> { @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class GroßGetậl6ˢᴰ extends AbstractBaseGetậlLevel1<GroßGetậl6ˢᴰ,V009Tyte> {
public static int BIT_COUNT = GroßGetậl1ⁿᴰ.BIT_COUNT * T12PartUncial.LENGTH(); private final V144Tocta[] values = new V144Tocta[T12PartUncial.LENGTH()];
private GroßGetậl1ⁿᴰ[] values = new GroßGetậl1ⁿᴰ[T12PartUncial.LENGTH()];
public GroßGetậl6ˢᴰ() { public GroßGetậl6ˢᴰ() {
for (int i=0;i<this.values.length;i++) { for (int i=0;i<this.values.length;i++) {
this.values[i] = new GroßGetậl1ⁿᴰ(); this.values[i] = new V144Tocta();
} }
} }
public GroßGetậl6ˢᴰ(BaseIteratorOctal values) { public GroßGetậl6ˢᴰ(BaseIteratorOctal values) {
for (int i=0;i<this.values.length;i++) { for (int i=0;i<this.values.length;i++) {
this.values[i] = new GroßGetậl1ⁿᴰ(values); this.values[i] = new V144Tocta(values);
} }
} }
public GroßGetậl6ˢᴰ(BaseIteratorTyte values) { public V009Tyte getValue() {
for (int i=0;i<this.values.length;i++) { return values[valueIndex1].getTytePart(T16PartHex.values()[valueIndex0]);
this.values[i] = new GroßGetậl1ⁿᴰ(values);
}
} }
public GroßGetậl1ⁿᴰ getValue(T12PartUncial part) {
return values[part.ordinal()];
}
public void setValue(T12PartUncial part, GroßGetậl1ⁿᴰ value) {
values[part.ordinal()] = value;
}
@Override @Override
public int getBitCount() { public int getValueIndex0Length() {
return BIT_COUNT; return T16PartHex.LENGTH();
} }
@Override
public int getValueIndex1Length() {
return T12PartUncial.LENGTH();
}
@Override @Override
public GroßGetậl6ˢᴰ toClone() { public GroßGetậl6ˢᴰ toClone() {
return new GroßGetậl6ˢᴰ(iteratorOctalsByClone()); BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
} for (int i=0;i<this.values.length;i++) {
cloneStack.addIterator(this.values[i].iteratorOctalsByClone());
@Override }
public void fillOctalsByClone(BaseAppenderOctal appender) { return new GroßGetậl6ˢᴰ(cloneStack);
T12PartUncial.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
}
@Override
public void fillTytesByReference(BaseAppenderTyte appender) {
T12PartUncial.PART_1.BãßVoorElk(v -> getValue(v).fillTytesByReference(appender));
} }
} }

View file

@ -1,75 +0,0 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.numberxd.base2t.BaseNumber;
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
/**
* Divide GroßGetậl1ⁿᴰ into resolved fractal slices.
*
* @author willemtsade ©Δ 仙上主天
*/
abstract public class GroßGetậlŌṁ1ⁿᴰ<V extends GroßGetậlŌṁ1ⁿᴰ<V> & BaseNumber<V>> implements BaseNumber<V> {
private GroßGetậl1ⁿᴰ[] values;
private int valuesLength;
private byte fractalLevel;
public GroßGetậlŌṁ1ⁿᴰ(byte fractalLevel) {
this.fractalLevel = fractalLevel;
this.valuesLength = resolveFractalLevel(fractalLevel);
this.values = new GroßGetậl1ⁿᴰ[valuesLength];
}
abstract protected int resolveFractalLevel(byte level);
public final byte getFractalLevel() {
return fractalLevel;
}
public final int getValuesLength() {
return valuesLength;
}
private final int validatePartRequest(int part) {
if (part < 0) {
throw new IllegalArgumentException("Requested part is negative");
}
if (part > valuesLength) {
throw new IllegalArgumentException("Requested part exceeds fractal storage");
}
return part;
}
public final GroßGetậl1ⁿᴰ getValue(int part) {
return values[validatePartRequest(part)];
}
public final void setValue(int part, GroßGetậl1ⁿᴰ value) {
values[validatePartRequest(part)] = value;
}
abstract protected V toCloneFractal(byte level);
@Override
public final V toClone() {
V result = toCloneFractal(getFractalLevel());
BaseIteratorOctal clonedOctals = iteratorOctalsByClone();
for (int i=0;i<getValuesLength();i++) {
result.setValue(i, new GroßGetậl1ⁿᴰ(clonedOctals));
}
return result;
}
@Override
public final int getBitCount() {
return GroßGetậl1ⁿᴰ.BIT_COUNT * valuesLength;
}
@Override
public final void fillOctalsByClone(BaseAppenderOctal appender) {
for (GroßGetậl1ⁿᴰ value:values) {
value.fillOctalsByClone(appender);
}
}
}

View file

@ -1,75 +0,0 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.numberxd.base2t.BaseNumber;
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
/**
* Divide GroßGetậl6ˢᴰ into resolved fractal slices.
*
* @author willemtsade ©Δ 仙上主天
*/
abstract public class GroßGetậlŌṁ6ˢᴰ<V extends GroßGetậlŌṁ6ˢᴰ<V> & BaseNumber<V>> implements BaseNumber<V> {
private GroßGetậl6ˢᴰ[] values;
private int valuesLength;
private byte fractalLevel;
public GroßGetậlŌṁ6ˢᴰ(byte fractalLevel) {
this.fractalLevel = fractalLevel;
this.valuesLength = resolveFractalLevel(fractalLevel);
this.values = new GroßGetậl6ˢᴰ[valuesLength];
}
abstract protected int resolveFractalLevel(byte level);
public final byte getFractalLevel() {
return fractalLevel;
}
public final int getValuesLength() {
return valuesLength;
}
private final int validatePartRequest(int part) {
if (part < 0) {
throw new IllegalArgumentException("Requested part is negative");
}
if (part > valuesLength) {
throw new IllegalArgumentException("Requested part exceeds fractal storage");
}
return part;
}
public final GroßGetậl6ˢᴰ getValue(int part) {
return values[validatePartRequest(part)];
}
public final void setValue(int part, GroßGetậl6ˢᴰ value) {
values[validatePartRequest(part)] = value;
}
abstract protected V toCloneFractal(byte level);
@Override
public final V toClone() {
V result = toCloneFractal(getFractalLevel());
BaseIteratorOctal clonedOctals = iteratorOctalsByClone();
for (int i=0;i<getValuesLength();i++) {
result.setValue(i, new GroßGetậl6ˢᴰ(clonedOctals));
}
return result;
}
@Override
public final int getBitCount() {
return GroßGetậl6ˢᴰ.BIT_COUNT * valuesLength;
}
@Override
public final void fillOctalsByClone(BaseAppenderOctal appender) {
for (GroßGetậl6ˢᴰ value:values) {
value.fillOctalsByClone(appender);
}
}
}

View file

@ -1,10 +1,11 @@
package love.distributedrebirth.numberxd; package love.distributedrebirth.numberxd;
/** import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
* import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
* @author willemtsade ©Δ 仙上主天 import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
*/
public class GroßGetậlŌṁDiamond1ⁿᴰ extends GroßGetậlŌṁ1ⁿᴰ<GroßGetậlŌṁDiamond1ⁿᴰ> { @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class GroßGetậlŌṁDiamond1ⁿᴰ extends AbstractGroßGetậlŌṁ1ⁿᴰ<GroßGetậlŌṁDiamond1ⁿᴰ> {
// 0th = 1 * V144Tocta (1) // 0th = 1 * V144Tocta (1)
// 1th = 1+3 * V144Tocta (4) // 1th = 1+3 * V144Tocta (4)
@ -16,13 +17,25 @@ public class GroßGetậlŌṁDiamond1ⁿᴰ extends GroßGetậlŌṁ1ⁿᴰ<Gr
super(level); super(level);
} }
public GroßGetậlŌṁDiamond1ⁿᴰ(byte level, BaseIteratorOctal values) {
super(level, values);
}
protected int resolveFractalLevel(byte level) { protected int resolveFractalLevel(byte level) {
// TODO // TODO
return level; return level;
} }
@Override @Override
protected GroßGetậlŌṁDiamond1ⁿᴰ toCloneFractal(byte level) { public GroßGetậlŌṁDiamond1ⁿᴰ toClone() {
return new GroßGetậlŌṁDiamond1ⁿᴰ(level); BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
for (int x=0;x<getValueIndex0Length();x++) {
setValueIndex0(x);
for (int y=0;y<getValueIndex1Length();y++) {
setValueIndex1(y);
cloneStack.addIterator(getValue().iteratorOctalsByClone());
}
}
return new GroßGetậlŌṁDiamond1ⁿᴰ(getFractalLevel(), cloneStack);
} }
} }

View file

@ -1,10 +1,11 @@
package love.distributedrebirth.numberxd; package love.distributedrebirth.numberxd;
/** import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
* import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
* @author willemtsade ©Δ 仙上主天 import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
*/
public class GroßGetậlŌṁDiamond6ˢᴰ extends GroßGetậlŌṁ6ˢᴰ<GroßGetậlŌṁDiamond6ˢᴰ> { @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) // 0th = 1 * V144Tocta (1)
// 1th = 1+3 * V144Tocta (4) // 1th = 1+3 * V144Tocta (4)
@ -16,13 +17,28 @@ public class GroßGetậlŌṁDiamond6ˢᴰ extends GroßGetậlŌṁ6ˢᴰ<Gro
super(level); super(level);
} }
public GroßGetậlŌṁDiamond6ˢᴰ(byte level, BaseIteratorOctal values) {
super(level, values);
}
protected int resolveFractalLevel(byte level) { protected int resolveFractalLevel(byte level) {
// TODO // TODO
return level; return level;
} }
@Override @Override
protected GroßGetậlŌṁDiamond6ˢᴰ toCloneFractal(byte level) { public GroßGetậlŌṁDiamond6ˢᴰ toClone() {
return new GroßGetậlŌṁDiamond6ˢᴰ(level); BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
for (int x=0;x<getValueIndex0Length();x++) {
setValueIndex0(x);
for (int y=0;y<getValueIndex1Length();y++) {
setValueIndex1(y);
for (int z=0;z<getValueIndex1Length();z++) {
setValueIndex1(z);
cloneStack.addIterator(getValue().iteratorOctalsByClone());
}
}
}
return new GroßGetậlŌṁDiamond6ˢᴰ(getFractalLevel(), cloneStack);
} }
} }

View file

@ -1,10 +1,11 @@
package love.distributedrebirth.numberxd; package love.distributedrebirth.numberxd;
/** import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
* import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
* @author willemtsade ©Δ 仙上主天 import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
*/
public class GroßGetậlŌṁHyperStàr1ⁿᴰ extends GroßGetậlŌṁ1ⁿᴰ<GroßGetậlŌṁHyperStàr1ⁿᴰ> { @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 // 0th = V144Tocta
// 1th = 5 * V144Tocta // 1th = 5 * V144Tocta
@ -15,13 +16,25 @@ public class GroßGetậlŌṁHyperStàr1ⁿᴰ extends GroßGetậlŌṁ1ⁿᴰ
super(level); super(level);
} }
public GroßGetậlŌṁHyperStàr1ⁿᴰ(byte level, BaseIteratorOctal values) {
super(level, values);
}
protected int resolveFractalLevel(byte level) { protected int resolveFractalLevel(byte level) {
// TODO // TODO
return level; return level;
} }
@Override @Override
protected GroßGetậlŌṁHyperStàr1ⁿᴰ toCloneFractal(byte level) { public GroßGetậlŌṁHyperStàr1ⁿᴰ toClone() {
return new GroßGetậlŌṁHyperStàr1ⁿᴰ(level); BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
for (int x=0;x<getValueIndex0Length();x++) {
setValueIndex0(x);
for (int y=0;y<getValueIndex1Length();y++) {
setValueIndex1(y);
cloneStack.addIterator(getValue().iteratorOctalsByClone());
}
}
return new GroßGetậlŌṁHyperStàr1ⁿᴰ(getFractalLevel(), cloneStack);
} }
} }

View file

@ -1,10 +1,11 @@
package love.distributedrebirth.numberxd; package love.distributedrebirth.numberxd;
/** import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
* import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
* @author willemtsade ©Δ 仙上主天 import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
*/
public class GroßGetậlŌṁHyperStàr6ˢᴰ extends GroßGetậlŌṁ6ˢᴰ<GroßGetậlŌṁHyperStàr6ˢᴰ> { @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 // 0th = V144Tocta
// 1th = 5 * V144Tocta // 1th = 5 * V144Tocta
@ -15,13 +16,28 @@ public class GroßGetậlŌṁHyperStàr6ˢᴰ extends GroßGetậlŌṁ6ˢᴰ<G
super(level); super(level);
} }
public GroßGetậlŌṁHyperStàr6ˢᴰ(byte level, BaseIteratorOctal values) {
super(level, values);
}
protected int resolveFractalLevel(byte level) { protected int resolveFractalLevel(byte level) {
// TODO // TODO
return level; return level;
} }
@Override @Override
protected GroßGetậlŌṁHyperStàr6ˢᴰ toCloneFractal(byte level) { public GroßGetậlŌṁHyperStàr6ˢᴰ toClone() {
return new GroßGetậlŌṁHyperStàr6ˢᴰ(level); BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
for (int x=0;x<getValueIndex0Length();x++) {
setValueIndex0(x);
for (int y=0;y<getValueIndex1Length();y++) {
setValueIndex1(y);
for (int z=0;z<getValueIndex1Length();z++) {
setValueIndex1(z);
cloneStack.addIterator(getValue().iteratorOctalsByClone());
}
}
}
return new GroßGetậlŌṁHyperStàr6ˢᴰ(getFractalLevel(), cloneStack);
} }
} }

View file

@ -3,37 +3,21 @@ package love.distributedrebirth.numberxd;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.part.T04PartQuad; import love.distributedrebirth.numberxd.base2t.part.T04PartQuad;
import love.distributedrebirth.numberxd.base2t.type.V024Teger; import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
import love.distributedrebirth.numberxd.base2t.type.V036Teger;
/** @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
* public class Gê̄ldGetậl extends AbstractBaseGetậlLevel0<Gê̄ldGetậl,V009Tyte> {
* @author willemtsade ©Δ 仙上主天
*/
public class Gê̄ldGetậl {
private final Gê̄ldGetậlÅtHebrew nummerAlphabet; private final V036Teger value;
private final Gê̄ldGetậlÅtHebrew nummerDeelA;
private final Gê̄ldGetậlÅtHebrew nummerDeelB;
private final Gê̄ldGetậlÅtHebrew nummerDeelC;
private final double totalDecimalValue; private final double totalDecimalValue;
private static final Character LEFT_TO_RIGHT_MARK = 0x200E; private static final Character LEFT_TO_RIGHT_MARK = 0x200E;
private static final Character RIGHT_TO_LEFT_MARK = 0x200F; private static final Character RIGHT_TO_LEFT_MARK = 0x200F;
public Gê̄ldGetậl(V024Teger teger) { public Gê̄ldGetậl(V036Teger value) {
this( this.value = value;
new Gê̄ldGetậlÅtHebrew(teger.getTytePart(T04PartQuad.PART_1)),
new Gê̄ldGetậlÅtHebrew(teger.getTytePart(T04PartQuad.PART_2)),
new Gê̄ldGetậlÅtHebrew(teger.getTytePart(T04PartQuad.PART_3)),
new Gê̄ldGetậlÅtHebrew(teger.getTytePart(T04PartQuad.PART_4))
);
}
public Gê̄ldGetậl(Gê̄ldGetậlÅtHebrew nummerAlphabet, Gê̄ldGetậlÅtHebrew nummerDeelA, Gê̄ldGetậlÅtHebrew nummerDeelB, Gê̄ldGetậlÅtHebrew nummerDeelC) {
this.nummerAlphabet = nummerAlphabet;
this.nummerDeelA = nummerDeelA;
this.nummerDeelB = nummerDeelB;
this.nummerDeelC = nummerDeelC;
this.totalDecimalValue = calculateDecimalValue(); this.totalDecimalValue = calculateDecimalValue();
} }
@ -101,14 +85,19 @@ public class Gê̄ldGetậl {
} else { } else {
deelC = new Gê̄ldGetậlÅtHebrew(); deelC = new Gê̄ldGetậlÅtHebrew();
} }
this.nummerAlphabet = full; value = new V036Teger();
this.nummerDeelA = deelA; value.setTytePart(T04PartQuad.PART_1, full.toTyte());
this.nummerDeelB = deelB; value.setTytePart(T04PartQuad.PART_2, deelA.toTyte());
this.nummerDeelC = deelC; value.setTytePart(T04PartQuad.PART_3, deelB.toTyte());
value.setTytePart(T04PartQuad.PART_4, deelC.toTyte());
this.totalDecimalValue = calculateDecimalValue(); this.totalDecimalValue = calculateDecimalValue();
} }
private double 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 = boolean hasFourDigits =
!Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelA.getLetter()) && !Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelA.getLetter()) &&
!Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelB.getLetter()) && !Gê̄ldGetậlÅtHebrewLetter.NONE.equals(nummerDeelB.getLetter()) &&
@ -126,40 +115,19 @@ public class Gê̄ldGetậl {
return totalDecimalValue; return totalDecimalValue;
} }
public Gê̄ldGetậlÅtHebrew getNummerAlphabet() {
return nummerAlphabet;
}
public Gê̄ldGetậlÅtHebrew getNummerDeelA() {
return nummerDeelA;
}
public Gê̄ldGetậlÅtHebrew getNummerDeelB() {
return nummerDeelB;
}
public Gê̄ldGetậlÅtHebrew getNummerDeelC() {
return nummerDeelC;
}
public double getTotalDecimalValue() { public double getTotalDecimalValue() {
return totalDecimalValue; return totalDecimalValue;
} }
public V024Teger toTeger() {
V024Teger result = new V024Teger();
result.setTytePart(T04PartQuad.PART_1, nummerAlphabet.toTyte());
result.setTytePart(T04PartQuad.PART_2, nummerDeelA.toTyte());
result.setTytePart(T04PartQuad.PART_3, nummerDeelB.toTyte());
result.setTytePart(T04PartQuad.PART_4, nummerDeelC.toTyte());
return result;
}
public String toHebrewString() { public String toHebrewString() {
return toHebrewString(false); return toHebrewString(false);
} }
public String toHebrewString(boolean reverse) { 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(); StringBuilder buf = new StringBuilder();
buf.append(RIGHT_TO_LEFT_MARK); buf.append(RIGHT_TO_LEFT_MARK);
buf.append(nummerAlphabet.getLetter().getCharacter()); buf.append(nummerAlphabet.getLetter().getCharacter());
@ -189,4 +157,19 @@ public class Gê̄ldGetậl {
} }
return buf.toString(); return buf.toString();
} }
@Override
public int getValueIndex0Length() {
return T04PartQuad.LENGTH();
}
@Override
public V009Tyte getValue() {
return value.getTytePart(T04PartQuad.values()[valueIndex0]);
}
@Override
public Gê̄ldGetậl toClone() {
return new Gê̄ldGetậl(value.toClone());
}
} }

View file

@ -1,14 +1,11 @@
package love.distributedrebirth.numberxd; package love.distributedrebirth.numberxd;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.part.T03PartTrit; import love.distributedrebirth.numberxd.base2t.part.T03PartTrit;
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal; import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
import love.distributedrebirth.numberxd.base2t.type.V009Tyte; import love.distributedrebirth.numberxd.base2t.type.V009Tyte;
/** @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
*
*
* @author willemtsade ©Δ 仙上主天
*/
public class Gê̄ldGetậlÅtHebrew { public class Gê̄ldGetậlÅtHebrew {
private static final double NUMERATOR_ONE = 1d; private static final double NUMERATOR_ONE = 1d;

View file

@ -1,63 +1,44 @@
package love.distributedrebirth.numberxd; package love.distributedrebirth.numberxd;
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte; import love.distributedrebirth.numberxd.base2t.typexl.V0x000CA8ˣᴸ;
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal; import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.type.V654Triz;
import love.distributedrebirth.numberxd.base2t.type.VCA8Tath;
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal; import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte; import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
/** @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
* Holds an 25920 bit value. (3240 bytes) public class KlompGetậl4ˢᴰ extends AbstractBaseGetậlLevel0<KlompGetậl4ˢᴰ,V0x000CA8ˣᴸ> {
*
* 4 * VCA8Tath red
* 4 * VCA8Tath blue
*
* @author willemtsade ©Δ 仙上主天
*/
public class KlompGetậl4ˢᴰ implements BaseNumberTyte<KlompGetậl4ˢᴰ> {
public static int BIT_COUNT = V654Triz.BIT_COUNT * T08PartOctal.LENGTH(); private final V0x000CA8ˣᴸ[] values = new V0x000CA8ˣᴸ[T08PartOctal.LENGTH()];
private final VCA8Tath[] values = new VCA8Tath[T08PartOctal.LENGTH()];
public KlompGetậl4ˢᴰ() { public KlompGetậl4ˢᴰ() {
for (int i=0;i<this.values.length;i++) { for (int i=0;i<this.values.length;i++) {
this.values[i] = new VCA8Tath(); this.values[i] = new V0x000CA8ˣᴸ();
} }
} }
public KlompGetậl4ˢᴰ(BaseIteratorOctal values) { public KlompGetậl4ˢᴰ(BaseIteratorOctal values) {
for (int i=0;i<this.values.length;i++) { for (int i=0;i<this.values.length;i++) {
this.values[i] = new VCA8Tath(values); this.values[i] = new V0x000CA8ˣᴸ(values);
} }
} }
public VCA8Tath getValue(T08PartOctal part) { @Override
return values[part.ordinal()]; public V0x000CA8ˣᴸ getValue() {
} return values[valueIndex0];
public void setValue(T08PartOctal part, VCA8Tath value) {
values[part.ordinal()] = value;
} }
@Override @Override
public int getBitCount() { public int getValueIndex0Length() {
return BIT_COUNT; return T08PartOctal.LENGTH();
} }
@Override @Override
public KlompGetậl4ˢᴰ toClone() { public KlompGetậl4ˢᴰ toClone() {
return new KlompGetậl4ˢᴰ(iteratorOctalsByClone()); BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
} for (int i=0;i<this.values.length;i++) {
cloneStack.addIterator(this.values[i].iteratorOctalsByClone());
@Override }
public void fillOctalsByClone(BaseAppenderOctal appender) { return new KlompGetậl4ˢᴰ(cloneStack);
T08PartOctal.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
}
@Override
public void fillTytesByReference(BaseAppenderTyte appender) {
T08PartOctal.PART_1.BãßVoorElk(v -> getValue(v).fillTytesByReference(appender));
} }
} }

View file

@ -1,73 +1,75 @@
package love.distributedrebirth.numberxd; package love.distributedrebirth.numberxd;
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte;
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal; import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte; 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. * Array of ŌṁKlompGetậl4ˢᴰ sliced as cheese.
*
* @author willemtsade ©Δ 仙上主天
*/ */
public class KlompÅtŌṁKāassGetậl4ˢᴰ implements BaseNumberTyte<KlompÅtŌṁKāassGetậl4ˢᴰ> { @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class KlompÅtŌṁKāassGetậl4ˢᴰ extends AbstractBaseGetậlLevel1<KlompÅtŌṁKāassGetậl4ˢᴰ, V0x000CA8ˣᴸ> {
private KlompGetậl4ˢᴰ[] kaas; private final V0x000CA8ˣᴸ[][] kaas;
private final int kaasCuts; private final int kaasCuts;
public KlompÅtŌṁKāassGetậl4ˢᴰ(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.kaasCuts = kaasCuts;
this.kaas = new KlompGetậl4ˢᴰ[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 final int getKaasCuts() { 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; return kaasCuts;
} }
private final int validatePartRequest(int part) { @Override
if (part < 0) { public V0x000CA8ˣᴸ getValue() {
throw new IllegalArgumentException("Requested part is negative"); return kaas[valueIndex0][valueIndex1];
}
if (part > kaasCuts) {
throw new IllegalArgumentException("Requested part exceeds kaasCuts storage");
}
return part;
}
public final KlompGetậl4ˢᴰ getValue(int part) {
return kaas[validatePartRequest(part)];
}
public final void setValue(int part, KlompGetậl4ˢᴰ value) {
kaas[validatePartRequest(part)] = value;
} }
@Override @Override
public final KlompÅtŌṁKāassGetậl4ˢᴰ toClone() { public int getValueIndex0Length() {
KlompÅtŌṁKāassGetậl4ˢᴰ result = new KlompÅtŌṁKāassGetậl4ˢᴰ(getKaasCuts()); return T08PartOctal.LENGTH();
BaseIteratorOctal clonedOctals = iteratorOctalsByClone();
for (int i=0;i<getKaasCuts();i++) {
result.setValue(i, new KlompGetậl4ˢᴰ(clonedOctals));
}
return result;
} }
@Override @Override
public final int getBitCount() { public int getValueIndex1Length() {
return KlompGetậl4ˢᴰ.BIT_COUNT * kaasCuts; return kaasCuts;
} }
@Override @Override
public final void fillOctalsByClone(BaseAppenderOctal appender) { public KlompÅtŌṁKāassGetậl4ˢᴰ toClone() {
for (KlompGetậl4ˢᴰ value:kaas) { BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
value.fillOctalsByClone(appender); for (int x=0;x<getValueIndex0Length();x++) {
} setValueIndex0(x);
} for (int y=0;y<getValueIndex1Length();y++) {
setValueIndex1(y);
@Override cloneStack.addIterator(getValue().iteratorOctalsByClone());
public void fillTytesByReference(BaseAppenderTyte appender) { }
for (KlompGetậl4ˢᴰ value:kaas) {
value.fillTytesByReference(appender);
} }
return new KlompÅtŌṁKāassGetậl4ˢᴰ(getKaasCuts(), cloneStack);
} }
} }

View file

@ -0,0 +1,47 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctalStack;
import love.distributedrebirth.numberxd.base2t.part.T04PartQuad;
import love.distributedrebirth.numberxd.base2t.typexl.V0x049D40ˣᴸ;
/**
* Wave quad channel.
*/
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class WaveGetậl1ᑫᴰ extends AbstractBaseGetậlLevel0<WaveGetậl1ᑫᴰ, V0x049D40ˣᴸ> {
private final V0x049D40ˣᴸ[] values = new V0x049D40ˣᴸ[T04PartQuad.LENGTH()];
public WaveGetậl1ᑫᴰ() {
for (int i=0;i<this.values.length;i++) {
this.values[i] = new V0x049D40ˣᴸ();
}
}
public WaveGetậl1ᑫᴰ(BaseIteratorOctal values) {
for (int i=0;i<this.values.length;i++) {
this.values[i] = new V0x049D40ˣᴸ(values);
}
}
@Override
public V0x049D40ˣᴸ getValue() {
return values[valueIndex0];
}
@Override
public int getValueIndex0Length() {
return T04PartQuad.LENGTH();
}
@Override
public WaveGetậl1ᑫᴰ toClone() {
BaseIteratorOctalStack cloneStack = new BaseIteratorOctalStack();
for (int i=0;i<this.values.length;i++) {
cloneStack.addIterator(this.values[i].iteratorOctalsByClone());
}
return new WaveGetậl1ᑫᴰ(cloneStack);
}
}

View file

@ -0,0 +1,32 @@
package love.distributedrebirth.numberxd;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.typexl.V0x049D40ˣᴸ;
/**
* Wave mono channel.
*/
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class WaveGetậl1ⁿᴰ implements BaseGetậl<WaveGetậl1ⁿᴰ, V0x049D40ˣᴸ> {
private final V0x049D40ˣᴸ value;
public WaveGetậl1ⁿᴰ() {
value = new V0x049D40ˣᴸ();
}
public WaveGetậl1ⁿᴰ(BaseIteratorOctal values) {
value = new V0x049D40ˣᴸ(values);
}
@Override
public V0x049D40ˣᴸ getValue() {
return value;
}
@Override
public WaveGetậl1ⁿᴰ toClone() {
return new WaveGetậl1ⁿᴰ(getValue().iteratorOctalsByClone());
}
}

View file

@ -10,8 +10,8 @@ import java.util.List;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ; import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.bassboonyd.BãßBȍőnEnumInstanceʸᴰ; import love.distributedrebirth.bassboonyd.BãßBȍőnEnumInstanceʸᴰ;
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal; import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
import love.distributedrebirth.numberxd.base2t.type.V048Tong; import love.distributedrebirth.numberxd.base2t.type.V072Tong;
import love.distributedrebirth.numberxd.base2t.type.V090Tocta; import love.distributedrebirth.numberxd.base2t.type.V144Tocta;
/** /**
* Terminate from and to classical bytes. * Terminate from and to classical bytes.
@ -27,7 +27,7 @@ public enum Base2Terminator implements BãßBȍőnEnumInstanceʸᴰ<Base2Termina
private static final int SHIFT_8 = 8; private static final int SHIFT_8 = 8;
private static final int SHIFT_16 = 16; private static final int SHIFT_16 = 16;
public int Bãß2ReadTong(InputStream input, List<V048Tong> output) throws IOException { public int Bãß2ReadTong(InputStream input, List<V072Tong> output) throws IOException {
int totalBytes = 0; int totalBytes = 0;
byte[] data = new byte[BLOCK_TONG_SIZE]; byte[] data = new byte[BLOCK_TONG_SIZE];
int readDataSize = 0; // per 9 bytes we have 24 octals for one V072Tong number int readDataSize = 0; // per 9 bytes we have 24 octals for one V072Tong number
@ -37,13 +37,13 @@ public enum Base2Terminator implements BãßBȍőnEnumInstanceʸᴰ<Base2Termina
int v1 = data[3] + (data[4] << SHIFT_8) + (data[5] << 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 v2 = data[6] + (data[7] << SHIFT_8) + (data[8] << SHIFT_16);
List<T08PartOctal> octals = Bãß2ReadOctals(v0, v1, v2); List<T08PartOctal> octals = Bãß2ReadOctals(v0, v1, v2);
output.add(new V048Tong(new BaseIteratorOctal(octals.iterator()))); output.add(new V072Tong(new BaseIteratorOctalAdapter(octals.iterator())));
totalBytes += BLOCK_TONG_SIZE; totalBytes += BLOCK_TONG_SIZE;
} }
return totalBytes; return totalBytes;
} }
public int Bãß2ReadTocta(InputStream input, List<V090Tocta> output) throws IOException { public int Bãß2ReadTocta(InputStream input, List<V144Tocta> output) throws IOException {
int totalBytes = 0; int totalBytes = 0;
byte[] data = new byte[BLOCK_TOCTA_SIZE]; byte[] data = new byte[BLOCK_TOCTA_SIZE];
int readDataSize = 0; // per 18 bytes we have 48 octals for one V144Tocta number int readDataSize = 0; // per 18 bytes we have 48 octals for one V144Tocta number
@ -56,7 +56,7 @@ public enum Base2Terminator implements BãßBȍőnEnumInstanceʸᴰ<Base2Termina
int v4 = data[12] + (data[13] << SHIFT_8) + (data[14] << 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); int v5 = data[15] + (data[16] << SHIFT_8) + (data[17] << SHIFT_16);
List<T08PartOctal> octals = Bãß2ReadOctals(v0, v1, v2, v3, v4, v5); List<T08PartOctal> octals = Bãß2ReadOctals(v0, v1, v2, v3, v4, v5);
output.add(new V090Tocta(new BaseIteratorOctal(octals.iterator()))); output.add(new V144Tocta(new BaseIteratorOctalAdapter(octals.iterator())));
totalBytes += BLOCK_TOCTA_SIZE; totalBytes += BLOCK_TOCTA_SIZE;
} }
return totalBytes; return totalBytes;
@ -76,11 +76,11 @@ public enum Base2Terminator implements BãßBȍőnEnumInstanceʸᴰ<Base2Termina
return octals; return octals;
} }
public int Bãß2WriteTong(List<V048Tong> data, OutputStream output) throws IOException { public int Bãß2WriteTong(List<V072Tong> data, OutputStream output) throws IOException {
return Bãß2Write(data, output); return Bãß2Write(data, output);
} }
public int Bãß2WriteTocta(List<V090Tocta> data, OutputStream output) throws IOException { public int Bãß2WriteTocta(List<V144Tocta> data, OutputStream output) throws IOException {
return Bãß2Write(data, output); return Bãß2Write(data, output);
} }

View file

@ -9,21 +9,7 @@ import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
* Iterator model for Octals. * Iterator model for Octals.
*/ */
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public final class BaseIteratorOctal implements Iterator<T08PartOctal> { public interface BaseIteratorOctal extends Iterator<T08PartOctal> {
private final Iterator<T08PartOctal> iterator;
public BaseIteratorOctal(Iterator<T08PartOctal> iterator) {
this.iterator = iterator;
}
@Override
public boolean hasNext() {
return iterator.hasNext();
}
@Override
public T08PartOctal next() {
return iterator.next();
}
} }

View file

@ -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();
}
}

View file

@ -0,0 +1,45 @@
package love.distributedrebirth.numberxd.base2t;
import java.util.Stack;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
/**
* Stack model for octal iterators.
*/
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public final class BaseIteratorOctalStack implements BaseIteratorOctal {
private final Stack<BaseIteratorOctal> stack = new Stack<>();
public BaseIteratorOctalStack() {
}
public void addIterator(BaseIteratorOctal iterator) {
stack.push(iterator);
}
@Override
public boolean hasNext() {
if (stack.isEmpty()) {
return false;
}
if (stack.peek().hasNext()) {
return true;
}
stack.pop();
if (stack.isEmpty()) {
return false;
}
return stack.peek().hasNext();
}
@Override
public T08PartOctal next() {
if (stack.isEmpty()) {
throw new IllegalStateException("Stack is empty.");
}
return stack.peek().next();
}
}

View file

@ -27,6 +27,6 @@ public interface BaseNumber<V extends BaseNumber<V>> {
default BaseIteratorOctal iteratorOctalsByClone() { default BaseIteratorOctal iteratorOctalsByClone() {
List<T08PartOctal> octals = new ArrayList<>(); List<T08PartOctal> octals = new ArrayList<>();
fillOctalsByClone(new BaseAppenderOctal(octals)); fillOctalsByClone(new BaseAppenderOctal(octals));
return new BaseIteratorOctal(octals.iterator()); return new BaseIteratorOctalAdapter(octals.iterator());
} }
} }

View file

@ -0,0 +1,11 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
/**
* Propogate baseXL interface upwards.
*/
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public interface BaseNumberTyteXL<V extends BaseNumber<V>> extends BaseNumberXL<V>,BaseNumberTyte<V> {
}

View file

@ -0,0 +1,11 @@
package love.distributedrebirth.numberxd.base2t;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
/**
* Marker for XL numbers which needs seperator renderer.
*/
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public interface BaseNumberXL<V extends BaseNumber<V>> extends BaseNumber<V> {
}

View file

@ -12,24 +12,24 @@ import love.distributedrebirth.numberxd.base2t.part.T03PartTrit;
* Holds an 27 bit value. * Holds an 27 bit value.
*/ */
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public final class V01BTemvig implements BaseNumberTyte<V01BTemvig> { public final class V027Temvig implements BaseNumberTyte<V027Temvig> {
public static int BIT_COUNT = V009Tyte.BIT_COUNT * T03PartTrit.LENGTH(); public static int BIT_COUNT = V009Tyte.BIT_COUNT * T03PartTrit.LENGTH();
private V009Tyte[] values = new V009Tyte[T03PartTrit.LENGTH()]; private V009Tyte[] values = new V009Tyte[T03PartTrit.LENGTH()];
public V01BTemvig() { public V027Temvig() {
this(new V009Tyte(), new V009Tyte(), new V009Tyte()); this(new V009Tyte(), new V009Tyte(), new V009Tyte());
} }
public V01BTemvig(BaseIteratorOctal values) { public V027Temvig(BaseIteratorOctal values) {
this(new V009Tyte(values), new V009Tyte(values), new V009Tyte(values)); this(new V009Tyte(values), new V009Tyte(values), new V009Tyte(values));
} }
public V01BTemvig(BaseIteratorTyte values) { public V027Temvig(BaseIteratorTyte values) {
this(values.next(), values.next(), values.next()); this(values.next(), values.next(), values.next());
} }
private V01BTemvig(V009Tyte valueHigh, V009Tyte valueMedium, V009Tyte valueLow) { private V027Temvig(V009Tyte valueHigh, V009Tyte valueMedium, V009Tyte valueLow) {
setValue(T03PartTrit.PART_1, valueHigh); setValue(T03PartTrit.PART_1, valueHigh);
setValue(T03PartTrit.PART_2, valueMedium); setValue(T03PartTrit.PART_2, valueMedium);
setValue(T03PartTrit.PART_3, valueLow); setValue(T03PartTrit.PART_3, valueLow);
@ -49,8 +49,8 @@ public final class V01BTemvig implements BaseNumberTyte<V01BTemvig> {
} }
@Override @Override
public V01BTemvig toClone() { public V027Temvig toClone() {
return new V01BTemvig(iteratorOctalsByClone()); return new V027Temvig(iteratorOctalsByClone());
} }
@Override @Override

View file

@ -13,24 +13,24 @@ import love.distributedrebirth.numberxd.base2t.part.T04PartQuad;
* Holds an 36 bit value. * Holds an 36 bit value.
*/ */
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public final class V024Teger implements BaseNumberTyte<V024Teger> { public final class V036Teger implements BaseNumberTyte<V036Teger> {
public static int BIT_COUNT = V012Tord.BIT_COUNT * T02PartBinary.LENGTH(); public static int BIT_COUNT = V012Tord.BIT_COUNT * T02PartBinary.LENGTH();
private V012Tord[] values = new V012Tord[T02PartBinary.LENGTH()]; private V012Tord[] values = new V012Tord[T02PartBinary.LENGTH()];
public V024Teger() { public V036Teger() {
this(new V012Tord(), new V012Tord()); this(new V012Tord(), new V012Tord());
} }
public V024Teger(BaseIteratorOctal values) { public V036Teger(BaseIteratorOctal values) {
this(new V012Tord(values), new V012Tord(values)); this(new V012Tord(values), new V012Tord(values));
} }
public V024Teger(BaseIteratorTyte values) { public V036Teger(BaseIteratorTyte values) {
this(new V012Tord(values), new V012Tord(values)); this(new V012Tord(values), new V012Tord(values));
} }
private V024Teger(V012Tord valueHigh, V012Tord valueLow) { private V036Teger(V012Tord valueHigh, V012Tord valueLow) {
setValue(T02PartBinary.PART_1, valueHigh); setValue(T02PartBinary.PART_1, valueHigh);
setValue(T02PartBinary.PART_2, valueLow); setValue(T02PartBinary.PART_2, valueLow);
} }
@ -59,8 +59,8 @@ public final class V024Teger implements BaseNumberTyte<V024Teger> {
} }
@Override @Override
public V024Teger toClone() { public V036Teger toClone() {
return new V024Teger(iteratorOctalsByClone()); return new V036Teger(iteratorOctalsByClone());
} }
@Override @Override

View file

@ -10,18 +10,18 @@ import love.distributedrebirth.numberxd.base2t.part.T07PartPlanIt;
* Holds an 42 bit value. * Holds an 42 bit value.
*/ */
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public final class V02ATraw implements BaseNumber<V02ATraw> { public final class V042Traw implements BaseNumber<V042Traw> {
public static int BIT_COUNT = V006Tixte.BIT_COUNT * T07PartPlanIt.LENGTH(); public static int BIT_COUNT = V006Tixte.BIT_COUNT * T07PartPlanIt.LENGTH();
private V006Tixte[] values = new V006Tixte[T07PartPlanIt.LENGTH()]; private V006Tixte[] values = new V006Tixte[T07PartPlanIt.LENGTH()];
public V02ATraw() { public V042Traw() {
for (int i=0;i<values.length;i++) { for (int i=0;i<values.length;i++) {
this.values[i] = new V006Tixte(); this.values[i] = new V006Tixte();
} }
} }
public V02ATraw(BaseIteratorOctal values) { public V042Traw(BaseIteratorOctal values) {
for (int i=0;i<this.values.length;i++) { for (int i=0;i<this.values.length;i++) {
this.values[i] = new V006Tixte(values); this.values[i] = new V006Tixte(values);
} }
@ -41,8 +41,8 @@ public final class V02ATraw implements BaseNumber<V02ATraw> {
} }
@Override @Override
public V02ATraw toClone() { public V042Traw toClone() {
return new V02ATraw(iteratorOctalsByClone()); return new V042Traw(iteratorOctalsByClone());
} }
@Override @Override

View file

@ -14,33 +14,33 @@ import love.distributedrebirth.numberxd.base2t.part.T08PartOctal;
* Holds an 72 bit value. * Holds an 72 bit value.
*/ */
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public final class V048Tong implements BaseNumberTyte<V048Tong> { public final class V072Tong implements BaseNumberTyte<V072Tong> {
public static int BIT_COUNT = V024Teger.BIT_COUNT * T02PartBinary.LENGTH(); public static int BIT_COUNT = V036Teger.BIT_COUNT * T02PartBinary.LENGTH();
private V024Teger[] values = new V024Teger[T02PartBinary.LENGTH()]; private V036Teger[] values = new V036Teger[T02PartBinary.LENGTH()];
public V048Tong() { public V072Tong() {
this(new V024Teger(), new V024Teger()); this(new V036Teger(), new V036Teger());
} }
public V048Tong(BaseIteratorOctal values) { public V072Tong(BaseIteratorOctal values) {
this(new V024Teger(values), new V024Teger(values)); this(new V036Teger(values), new V036Teger(values));
} }
public V048Tong(BaseIteratorTyte values) { public V072Tong(BaseIteratorTyte values) {
this(new V024Teger(values), new V024Teger(values)); this(new V036Teger(values), new V036Teger(values));
} }
private V048Tong(V024Teger valueHigh, V024Teger valueLow) { private V072Tong(V036Teger valueHigh, V036Teger valueLow) {
setValue(T02PartBinary.PART_1, valueHigh); setValue(T02PartBinary.PART_1, valueHigh);
setValue(T02PartBinary.PART_2, valueLow); setValue(T02PartBinary.PART_2, valueLow);
} }
public V024Teger getValue(T02PartBinary part) { public V036Teger getValue(T02PartBinary part) {
return values[part.ordinal()]; return values[part.ordinal()];
} }
public void setValue(T02PartBinary part, V024Teger value) { public void setValue(T02PartBinary part, V036Teger value) {
values[part.ordinal()] = value; values[part.ordinal()] = value;
} }
@ -62,8 +62,8 @@ public final class V048Tong implements BaseNumberTyte<V048Tong> {
} }
@Override @Override
public V048Tong toClone() { public V072Tong toClone() {
return new V048Tong(iteratorOctalsByClone()); return new V072Tong(iteratorOctalsByClone());
} }
@Override @Override

View file

@ -16,33 +16,33 @@ import love.distributedrebirth.numberxd.base2t.part.T16PartHex;
* Holds an 144 bit value. * Holds an 144 bit value.
*/ */
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public final class V090Tocta implements BaseNumberTyte<V090Tocta> { public final class V144Tocta implements BaseNumberTyte<V144Tocta> {
public static int BIT_COUNT = V048Tong.BIT_COUNT * T02PartBinary.LENGTH(); public static int BIT_COUNT = V072Tong.BIT_COUNT * T02PartBinary.LENGTH();
private V048Tong[] values = new V048Tong[T02PartBinary.LENGTH()]; private V072Tong[] values = new V072Tong[T02PartBinary.LENGTH()];
public V090Tocta() { public V144Tocta() {
this(new V048Tong(), new V048Tong()); this(new V072Tong(), new V072Tong());
} }
public V090Tocta(BaseIteratorOctal values) { public V144Tocta(BaseIteratorOctal values) {
this(new V048Tong(values), new V048Tong(values)); this(new V072Tong(values), new V072Tong(values));
} }
public V090Tocta(BaseIteratorTyte values) { public V144Tocta(BaseIteratorTyte values) {
this(new V048Tong(values), new V048Tong(values)); this(new V072Tong(values), new V072Tong(values));
} }
private V090Tocta(V048Tong valueHigh, V048Tong valueLow) { private V144Tocta(V072Tong valueHigh, V072Tong valueLow) {
setValue(T02PartBinary.PART_1, valueHigh); setValue(T02PartBinary.PART_1, valueHigh);
setValue(T02PartBinary.PART_2, valueLow); setValue(T02PartBinary.PART_2, valueLow);
} }
public V048Tong getValue(T02PartBinary part) { public V072Tong getValue(T02PartBinary part) {
return values[part.ordinal()]; return values[part.ordinal()];
} }
public void setValue(T02PartBinary part, V048Tong value) { public void setValue(T02PartBinary part, V072Tong value) {
values[part.ordinal()] = value; values[part.ordinal()] = value;
} }
@ -78,8 +78,8 @@ public final class V090Tocta implements BaseNumberTyte<V090Tocta> {
} }
@Override @Override
public V090Tocta toClone() { public V144Tocta toClone() {
return new V090Tocta(iteratorOctalsByClone()); return new V144Tocta(iteratorOctalsByClone());
} }
@Override @Override

View file

@ -1,37 +1,38 @@
package love.distributedrebirth.numberxd.base2t.type; package love.distributedrebirth.numberxd.base2t.typexl;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ; import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal; import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal; import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.BaseNumber; import love.distributedrebirth.numberxd.base2t.BaseNumberXL;
import love.distributedrebirth.numberxd.base2t.part.T20PartScore; import love.distributedrebirth.numberxd.base2t.part.T20PartScore;
import love.distributedrebirth.numberxd.base2t.type.V042Traw;
/** /**
* Holds an 840 bit value. * Holds an 840 bit value.
*/ */
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class V348Traz implements BaseNumber<V348Traz> { public class V0x000348ˣᴸ implements BaseNumberXL<V0x000348ˣᴸ> {
public static int BIT_COUNT = V02ATraw.BIT_COUNT * T20PartScore.LENGTH(); public static int BIT_COUNT = V042Traw.BIT_COUNT * T20PartScore.LENGTH();
private V02ATraw[] values = new V02ATraw[T20PartScore.LENGTH()]; private V042Traw[] values = new V042Traw[T20PartScore.LENGTH()];
public V348Traz() { public V0x000348ˣᴸ() {
for (int i=0;i<values.length;i++) { for (int i=0;i<values.length;i++) {
this.values[i] = new V02ATraw(); this.values[i] = new V042Traw();
} }
} }
public V348Traz(BaseIteratorOctal values) { public V0x000348ˣᴸ(BaseIteratorOctal values) {
for (int i=0;i<this.values.length;i++) { for (int i=0;i<this.values.length;i++) {
this.values[i] = new V02ATraw(values); this.values[i] = new V042Traw(values);
} }
} }
public V02ATraw getValue(T20PartScore part) { public V042Traw getValue(T20PartScore part) {
return values[part.ordinal()]; return values[part.ordinal()];
} }
public void setValue(T20PartScore part, V02ATraw value) { public void setValue(T20PartScore part, V042Traw value) {
values[part.ordinal()] = value; values[part.ordinal()] = value;
} }
@ -41,8 +42,8 @@ public class V348Traz implements BaseNumber<V348Traz> {
} }
@Override @Override
public V348Traz toClone() { public V0x000348ˣᴸ toClone() {
return new V348Traz(iteratorOctalsByClone()); return new V0x000348ˣᴸ(iteratorOctalsByClone());
} }
@Override @Override

View file

@ -1,38 +1,39 @@
package love.distributedrebirth.numberxd.base2t.type; package love.distributedrebirth.numberxd.base2t.typexl;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ; import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal; import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte; import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal; import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte; import love.distributedrebirth.numberxd.base2t.BaseNumberTyteXL;
import love.distributedrebirth.numberxd.base2t.part.T60PartSexagesimal; import love.distributedrebirth.numberxd.base2t.part.T60PartSexagesimal;
import love.distributedrebirth.numberxd.base2t.type.V027Temvig;
/** /**
* Holds an 1620 bit value. * Holds an 1620 bit value.
*/ */
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class V654Triz implements BaseNumberTyte<V654Triz> { public class V0x000654ˣᴸ implements BaseNumberTyteXL<V0x000654ˣᴸ> {
public static int BIT_COUNT = V01BTemvig.BIT_COUNT * T60PartSexagesimal.LENGTH(); public static int BIT_COUNT = V027Temvig.BIT_COUNT * T60PartSexagesimal.LENGTH();
private V01BTemvig[] values = new V01BTemvig[T60PartSexagesimal.LENGTH()]; private V027Temvig[] values = new V027Temvig[T60PartSexagesimal.LENGTH()];
public V654Triz() { public V0x000654ˣᴸ() {
for (int i=0;i<this.values.length;i++) { for (int i=0;i<this.values.length;i++) {
this.values[i] = new V01BTemvig(); this.values[i] = new V027Temvig();
} }
} }
public V654Triz(BaseIteratorOctal values) { public V0x000654ˣᴸ(BaseIteratorOctal values) {
for (int i=0;i<this.values.length;i++) { for (int i=0;i<this.values.length;i++) {
this.values[i] = new V01BTemvig(values); this.values[i] = new V027Temvig(values);
} }
} }
public V01BTemvig getValue(T60PartSexagesimal part) { public V027Temvig getValue(T60PartSexagesimal part) {
return values[part.ordinal()]; return values[part.ordinal()];
} }
public void setValue(T60PartSexagesimal part, V01BTemvig value) { public void setValue(T60PartSexagesimal part, V027Temvig value) {
values[part.ordinal()] = value; values[part.ordinal()] = value;
} }
@ -42,8 +43,8 @@ public class V654Triz implements BaseNumberTyte<V654Triz> {
} }
@Override @Override
public V654Triz toClone() { public V0x000654ˣᴸ toClone() {
return new V654Triz(iteratorOctalsByClone()); return new V0x000654ˣᴸ(iteratorOctalsByClone());
} }
@Override @Override

View file

@ -1,39 +1,39 @@
package love.distributedrebirth.numberxd.base2t.type; package love.distributedrebirth.numberxd.base2t.typexl;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ; import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal; import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte; import love.distributedrebirth.numberxd.base2t.BaseAppenderTyte;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal; import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.BaseNumberTyte; import love.distributedrebirth.numberxd.base2t.BaseNumberTyteXL;
import love.distributedrebirth.numberxd.base2t.part.T02PartBinary; import love.distributedrebirth.numberxd.base2t.part.T02PartBinary;
/** /**
* Holds an 3240 bit value. * Holds an 3240 bit value.
*/ */
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天") @BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class VCA8Tath implements BaseNumberTyte<VCA8Tath> { public class V0x000CA8ˣᴸ implements BaseNumberTyteXL<V0x000CA8ˣᴸ> {
public static int BIT_COUNT = V654Triz.BIT_COUNT * T02PartBinary.LENGTH(); public static int BIT_COUNT = V0x000654ˣᴸ.BIT_COUNT * T02PartBinary.LENGTH();
private V654Triz[] values = new V654Triz[T02PartBinary.LENGTH()]; private V0x000654ˣᴸ[] values = new V0x000654ˣᴸ[T02PartBinary.LENGTH()];
public VCA8Tath() { public V0x000CA8ˣᴸ() {
this(new V654Triz(), new V654Triz()); this(new V0x000654ˣᴸ(), new V0x000654ˣᴸ());
} }
public VCA8Tath(BaseIteratorOctal values) { public V0x000CA8ˣᴸ(BaseIteratorOctal values) {
this(new V654Triz(values), new V654Triz(values)); this(new V0x000654ˣᴸ(values), new V0x000654ˣᴸ(values));
} }
private VCA8Tath(V654Triz valueHigh, V654Triz valueLow) { private V0x000CA8ˣᴸ(V0x000654ˣᴸ valueHigh, V0x000654ˣᴸ valueLow) {
setValue(T02PartBinary.PART_1, valueHigh); setValue(T02PartBinary.PART_1, valueHigh);
setValue(T02PartBinary.PART_2, valueLow); setValue(T02PartBinary.PART_2, valueLow);
} }
public V654Triz getValue(T02PartBinary part) { public V0x000654ˣᴸ getValue(T02PartBinary part) {
return values[part.ordinal()]; return values[part.ordinal()];
} }
public void setValue(T02PartBinary part, V654Triz value) { public void setValue(T02PartBinary part, V0x000654ˣᴸ value) {
values[part.ordinal()] = value; values[part.ordinal()] = value;
} }
@ -43,8 +43,8 @@ public class VCA8Tath implements BaseNumberTyte<VCA8Tath> {
} }
@Override @Override
public VCA8Tath toClone() { public V0x000CA8ˣᴸ toClone() {
return new VCA8Tath(iteratorOctalsByClone()); return new V0x000CA8ˣᴸ(iteratorOctalsByClone());
} }
@Override @Override

View file

@ -0,0 +1,52 @@
package love.distributedrebirth.numberxd.base2t.typexl;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.BaseNumberXL;
import love.distributedrebirth.numberxd.base2t.part.T06PartSeximal;
/**
* Holds an 5040 bit value.
*/
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class V0x0013B0ˣᴸ implements BaseNumberXL<V0x0013B0ˣᴸ> {
public static int BIT_COUNT = V0x000348ˣᴸ.BIT_COUNT * T06PartSeximal.LENGTH();
private V0x000348ˣᴸ[] values = new V0x000348ˣᴸ[T06PartSeximal.LENGTH()];
public V0x0013B0ˣᴸ() {
for (int i=0;i<values.length;i++) {
this.values[i] = new V0x000348ˣᴸ();
}
}
public V0x0013B0ˣᴸ(BaseIteratorOctal values) {
for (int i=0;i<this.values.length;i++) {
this.values[i] = new V0x000348ˣᴸ(values);
}
}
public V0x000348ˣᴸ getValue(T06PartSeximal part) {
return values[part.ordinal()];
}
public void setValue(T06PartSeximal part, V0x000348ˣᴸ value) {
values[part.ordinal()] = value;
}
@Override
public int getBitCount() {
return BIT_COUNT;
}
@Override
public V0x0013B0ˣᴸ toClone() {
return new V0x0013B0ˣᴸ(iteratorOctalsByClone());
}
@Override
public void fillOctalsByClone(BaseAppenderOctal appender) {
T06PartSeximal.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
}
}

View file

@ -0,0 +1,52 @@
package love.distributedrebirth.numberxd.base2t.typexl;
import love.distributedrebirth.bassboonyd.BãßBȍőnAuthorInfoʸᴰ;
import love.distributedrebirth.numberxd.base2t.BaseAppenderOctal;
import love.distributedrebirth.numberxd.base2t.BaseIteratorOctal;
import love.distributedrebirth.numberxd.base2t.BaseNumberXL;
import love.distributedrebirth.numberxd.base2t.part.T60PartSexagesimal;
/**
* Holds an 302400 bit value. (37800 bytes)
*/
@BãßBȍőnAuthorInfoʸᴰ(name = "willemtsade", copyright = "©Δ∞ 仙上主天")
public class V0x049D40ˣᴸ implements BaseNumberXL<V0x049D40ˣᴸ> {
public static int BIT_COUNT = V0x0013B0ˣᴸ.BIT_COUNT * T60PartSexagesimal.LENGTH();
private V0x0013B0ˣᴸ[] values = new V0x0013B0ˣᴸ[T60PartSexagesimal.LENGTH()];
public V0x049D40ˣᴸ() {
for (int i=0;i<values.length;i++) {
this.values[i] = new V0x0013B0ˣᴸ();
}
}
public V0x049D40ˣᴸ(BaseIteratorOctal values) {
for (int i=0;i<this.values.length;i++) {
this.values[i] = new V0x0013B0ˣᴸ(values);
}
}
public V0x0013B0ˣᴸ getValue(T60PartSexagesimal part) {
return values[part.ordinal()];
}
public void setValue(T60PartSexagesimal part, V0x0013B0ˣᴸ value) {
values[part.ordinal()] = value;
}
@Override
public int getBitCount() {
return BIT_COUNT;
}
@Override
public V0x049D40ˣᴸ toClone() {
return new V0x049D40ˣᴸ(iteratorOctalsByClone());
}
@Override
public void fillOctalsByClone(BaseAppenderOctal appender) {
T60PartSexagesimal.PART_1.BãßVoorElk(v -> getValue(v).fillOctalsByClone(appender));
}
}