JPP: Made zerdinal space materializer an T-bone for self this reference

This commit is contained in:
Willem Cazander 2025-12-15 15:50:40 +01:00
parent 1f958a1adc
commit 813980f35c
2 changed files with 10 additions and 8 deletions

View file

@ -33,6 +33,7 @@ import java.util.function.Consumer;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒢObjectTBone;
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.T002ᖟ; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.T002ᖟ;
import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.ArrayLadderᴿᵂ; import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.ArrayLadderᴿᵂ;
import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.Ladderᴿᵈ; import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.Ladderᴿᵈ;
@ -45,7 +46,7 @@ import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAu
/// @author للَّٰهِilLצسُو /// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天 /// @version ©Δ 仙上主天
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public interface PrimordialZerdinalSpaceMaterializer<T extends PrimordialZerdinalSpaceMaterializer<T>> extends PrimordialZerdinalSpaceBoundary { public interface PrimordialZerdinalSpaceMaterializer<T extends PrimordialZerdinalSpaceMaterializer<T>> extends PrimordialZerdinalSpaceBoundary, ᒢObjectTBone<T> {
/// Materialize an number from the bounded zerdinal number space. /// Materialize an number from the bounded zerdinal number space.
T zerdinalMaterializeSpace(int zerdinal); T zerdinalMaterializeSpace(int zerdinal);
@ -53,6 +54,7 @@ public interface PrimordialZerdinalSpaceMaterializer<T extends PrimordialZerdina
default RopeOfAzraelᴿᵈ<T> zerdinalSpaceRope() { default RopeOfAzraelᴿᵈ<T> zerdinalSpaceRope() {
return new RopeOfAzraelᴿᵈ<T>() { return new RopeOfAzraelᴿᵈ<T>() {
int zerdinalSpaceWalker = 0; int zerdinalSpaceWalker = 0;
@Override @Override
public T002ᖟ hasNextᴿᵈ() { public T002ᖟ hasNextᴿᵈ() {
return T002ᖟ.valueOf(zerdinalSpaceWalker < zerdinalSpaceBoundary()); return T002ᖟ.valueOf(zerdinalSpaceWalker < zerdinalSpaceBoundary());

View file

@ -47,20 +47,20 @@ public interface ZerdinalAḃåčȕs̈Rȧñk<T extends ZerdinalAḃåčȕs̈Rȧ
} }
default T abacusRȧñkGotoFirst() { default T abacusRȧñkGotoFirst() {
return abacusOperation(ZerdinalAḃåčȕs̈RȧñkWaterWorks.GOTO_FIRST, zerdinal()).materializeOutput(zerdinalMaterializeSpace(zerdinal())); return abacusOperation(ZerdinalAḃåčȕs̈RȧñkWaterWorks.GOTO_FIRST, zerdinal()).materializeOutput(thisᵀᴮᵒⁿᵉ());
} }
default T abacusRȧñkGotoLast() { default T abacusRȧñkGotoLast() {
return abacusOperation(ZerdinalAḃåčȕs̈RȧñkWaterWorks.GOTO_LAST, zerdinal()).materializeOutput(zerdinalMaterializeSpace(zerdinal())); return abacusOperation(ZerdinalAḃåčȕs̈RȧñkWaterWorks.GOTO_LAST, zerdinal()).materializeOutput(thisᵀᴮᵒⁿᵉ());
} }
@Deprecated @Deprecated
default T abacusRȧñkGotoUp(boolean loop) { default T abacusRȧñkGotoUp(boolean loop) {
return abacusOperation(ZerdinalAḃåčȕs̈RȧñkWaterWorks.PLUS, 1, loop).materializeOutput(zerdinalMaterializeSpace(zerdinal())); return abacusOperation(ZerdinalAḃåčȕs̈RȧñkWaterWorks.PLUS, 1, loop).materializeOutput(thisᵀᴮᵒⁿᵉ());
} }
@Deprecated @Deprecated
default T abacusRȧñkGotoDown(boolean loop) { default T abacusRȧñkGotoDown(boolean loop) {
return abacusOperation(ZerdinalAḃåčȕs̈RȧñkWaterWorks.MINUS, 1, loop).materializeOutput(zerdinalMaterializeSpace(zerdinal())); return abacusOperation(ZerdinalAḃåčȕs̈RȧñkWaterWorks.MINUS, 1, loop).materializeOutput(thisᵀᴮᵒⁿᵉ());
} }
} }