JPP: Moved zerdinal to Long with cheese and smurf infrastructure helpers
Some checks failed
Run test asserts / Test-Asserts (push) Failing after 48s
Some checks failed
Run test asserts / Test-Asserts (push) Failing after 48s
This commit is contained in:
parent
9b33bed06c
commit
b2e7320b2f
62 changed files with 969 additions and 206 deletions
|
|
@ -40,8 +40,8 @@ import ᒢᐩᐩ.ᒃᣔᔆᔆᒃᐤᐤᣕ.ᔿᓑᔿᔿᔋᐝᣚ.Bãßᛗᚢᛗ
|
|||
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
|
||||
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒢᔿᕽ.Vū́ǘrBȍőnSupportꞱᴿᴳᴮ;
|
||||
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒢᔿᕽ.ᘁᓑᓑᣗ.Vū́ǘrBurnCounterᴶᴹˣ;
|
||||
import ᒢᣘᐧᐧ.ᑊᑉᣔᣔᔆ.ᐤᑊᐣᓫᓑᣗ.KaasOdeurZerdinalIdentity;
|
||||
import ᒢᣘᐧᐧ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆᒾ.Ladder;
|
||||
import ᒢᣘᐧᐧ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆᒾ.ᙆᓫᣗᒄᑊᣕᣔᒻ.ZerdinalSpaceBoundary;
|
||||
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒢℭỗᶇṧⱦᶏꬼȶʂ;
|
||||
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.ᐦ.Terminator注;
|
||||
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.ᐦ.Terminator𓄯;
|
||||
|
|
@ -192,21 +192,25 @@ public enum TTꞱꞱᖟGateway implements BãßᛗᚢᛗᛗᛉVū́ǘrChaliceEnu
|
|||
return ghostsInAShell;
|
||||
}
|
||||
@Override
|
||||
final public long zerdinal() {
|
||||
return slice;
|
||||
}
|
||||
@Override
|
||||
final public long zerdinalSpaceBoundary() {
|
||||
return terminator注.slices();
|
||||
}
|
||||
@Override
|
||||
final public T zerdinalMaterializeSpace(long zerdinal) {
|
||||
public T thisᵀᴮᵒⁿᵉᴺᵉʷ(Long zerdinal) {
|
||||
if (slice == zerdinal) {
|
||||
return thisᵀᴮᵒⁿᵉ(); // keep JVM identity equals to itself
|
||||
}
|
||||
return creator.apply(zerdinal);
|
||||
}
|
||||
@Override
|
||||
public Long thisᴺᵘᵐᵇᵉʳᴿᵒᵒᵗ() {
|
||||
return 0L;
|
||||
}
|
||||
@Override
|
||||
public Long thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉᵁᵖ() {
|
||||
return (long)terminator注.slices();
|
||||
}
|
||||
@Override
|
||||
final public Long zerdinal() {
|
||||
return slice;
|
||||
}
|
||||
@Override
|
||||
final public String abacusRȧñkName() {
|
||||
return slice + "_" + terminator注.slices();
|
||||
}
|
||||
|
|
@ -237,7 +241,7 @@ public enum TTꞱꞱᖟGateway implements BãßᛗᚢᛗᛗᛉVū́ǘrChaliceEnu
|
|||
}
|
||||
private interface PrimordialZerdinalMutexBaseX {
|
||||
}
|
||||
private interface PrimordialZerdinalMutex<T extends PrimordialZerdinalMutexBaseX> extends ZerdinalSpaceBoundary {
|
||||
private interface PrimordialZerdinalMutex<T extends PrimordialZerdinalMutexBaseX> /*extends ZerdinalSpaceBoundary*/ {
|
||||
}
|
||||
private interface PrimordialZerdinalMutexBase1 extends PrimordialZerdinalMutexBaseX {
|
||||
static final int PART_0001 = 0;
|
||||
|
|
@ -264,47 +268,52 @@ public enum TTꞱꞱᖟGateway implements BãßᛗᚢᛗᛗᛉVū́ǘrChaliceEnu
|
|||
// static NetherRingTone<?> PrimordialOrdinalBase2PartX = NetherSlug<,,,,,,,b2,p1++>, NetherSlugBound<,,,,,,,b2,p2> {} // or one range super, so one method argument works
|
||||
}
|
||||
private interface PrimordialZerdinalBase1 extends PrimordialZerdinalMutexBase1, PrimordialZerdinalMutex<PrimordialZerdinalMutexBase1> {
|
||||
@Override
|
||||
default long zerdinalSpaceBoundary() {
|
||||
return PART_0001; // TODO: this comes (twice) automaticly from the aggregated named tri merg-ed object slug group A/B(of 18 bit) by knowing the offset of the base of the slug group via the interface the value part (above)
|
||||
}
|
||||
// @Override
|
||||
// default long zerdinalSpaceBoundary() {
|
||||
// return PART_0001; // TODO: this comes (twice) automaticly from the aggregated named tri merg-ed object slug group A/B(of 18 bit) by knowing the offset of the base of the slug group via the interface the value part (above)
|
||||
// }
|
||||
}
|
||||
private interface PrimordialZerdinalBase2 extends PrimordialZerdinalMutexBase2, PrimordialZerdinalMutex<PrimordialZerdinalMutexBase2> {
|
||||
@Override
|
||||
default long zerdinalSpaceBoundary() {
|
||||
return PART_0002;
|
||||
}
|
||||
// @Override
|
||||
// default long zerdinalSpaceBoundary() {
|
||||
// return PART_0002;
|
||||
// }
|
||||
}
|
||||
@Terminator注(slices = 1) // TODO: delete anno, comes from first tri merg-ed slug, the second tri-merged-ed slug is the PART_0001++ slice identifier interface key.
|
||||
static public class BoneZerdinalBase1 extends BoneTerminatorBaseX<BoneZerdinalBase1> implements PrimordialZerdinalBase1 {
|
||||
static public final BoneZerdinalBase1 IDENDITY = new BoneZerdinalBase1(ᒢℭỗᶇṧⱦᶏꬼȶʂ.INTᣟᐧᣟZERO);
|
||||
private BoneZerdinalBase1(long slice) {
|
||||
static public sealed class BoneZerdinalBase1 extends BoneTerminatorBaseX<BoneZerdinalBase1> implements PrimordialZerdinalBase1 {
|
||||
static public final class BoneZerdinalBase1Identity extends BoneZerdinalBase1 implements KaasOdeurZerdinalIdentity<BoneZerdinalBase1, Long> {
|
||||
private BoneZerdinalBase1Identity() {
|
||||
super(ᒢℭỗᶇṧⱦᶏꬼȶʂ.LONGᣟᐧᣟZERO);
|
||||
}
|
||||
}
|
||||
static public final BoneZerdinalBase1Identity IDENTITY = new BoneZerdinalBase1Identity();
|
||||
private BoneZerdinalBase1(Long slice) {
|
||||
super(slice, i -> new BoneZerdinalBase1(i)); // TODO: make anno optional and add slice count in an drum constructor
|
||||
}
|
||||
static public BoneZerdinalBase1 valueOf(int zerdinal) {
|
||||
return IDENDITY.zerdinalMaterializeSpace(zerdinal);
|
||||
static public BoneZerdinalBase1 valueOf(Long zerdinal) {
|
||||
return IDENTITY.thisᵀᴮᵒⁿᵉᴺᵉʷ(zerdinal);
|
||||
}
|
||||
static public long valuesLength() {
|
||||
return IDENDITY.zerdinalSpaceBoundary();
|
||||
static public Long valuesLength() {
|
||||
return IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉᵁᵖ();
|
||||
}
|
||||
static public BoneZerdinalBase1[] values() {
|
||||
return IDENDITY.zerdinalSpaceRodsToLadder().stream().toList().toArray(new BoneZerdinalBase1[] {});
|
||||
return IDENTITY.zerdinalSpaceRodsToLadder().stream().toList().toArray(new BoneZerdinalBase1[] {});
|
||||
}
|
||||
}
|
||||
@Terminator注(slices = 2)
|
||||
static public class BoneZerdinalBase2 extends BoneTerminatorBaseX<BoneZerdinalBase2> implements PrimordialZerdinalBase2 {
|
||||
static public final BoneZerdinalBase2 IDENDITY = new BoneZerdinalBase2(ᒢℭỗᶇṧⱦᶏꬼȶʂ.INTᣟᐧᣟZERO);
|
||||
private BoneZerdinalBase2(long slice) {
|
||||
static public final BoneZerdinalBase2 IDENTITY = new BoneZerdinalBase2(ᒢℭỗᶇṧⱦᶏꬼȶʂ.LONGᣟᐧᣟZERO);
|
||||
private BoneZerdinalBase2(Long slice) {
|
||||
super(slice, i -> new BoneZerdinalBase2(i));
|
||||
}
|
||||
static public BoneZerdinalBase2 valueOf(int zerdinal) {
|
||||
return IDENDITY.zerdinalMaterializeSpace(zerdinal);
|
||||
static public BoneZerdinalBase2 valueOf(Long zerdinal) {
|
||||
return IDENTITY.thisᵀᴮᵒⁿᵉᴺᵉʷ(zerdinal);
|
||||
}
|
||||
static public long valuesLength() {
|
||||
return IDENDITY.zerdinalSpaceBoundary();
|
||||
static public Long valuesLength() {
|
||||
return IDENTITY.thisᴺᵘᵐᵇᵉʳᴿᵃⁿᵍᵉᵁᵖ();
|
||||
}
|
||||
static public BoneZerdinalBase2[] values() {
|
||||
return IDENDITY.zerdinalSpaceRodsToLadder().stream().toList().toArray(new BoneZerdinalBase2[] {});
|
||||
return IDENTITY.zerdinalSpaceRodsToLadder().stream().toList().toArray(new BoneZerdinalBase2[] {});
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue