JPP: Changed the iterator naming to a smurfs less implementation

This commit is contained in:
Willem Cazander 2025-09-12 12:42:51 +02:00
parent f76bbd9123
commit 192977f764
19 changed files with 98 additions and 79 deletions

View file

@ -96,7 +96,7 @@ public final class BãßBȍőnBőatWindKnots {
public <T extends ᒢObject> void knots(Collectionᴿᵈ<T> troopers) { public <T extends ᒢObject> void knots(Collectionᴿᵈ<T> troopers) {
if (troopers.sizeᴿᵈ() > 0) { if (troopers.sizeᴿᵈ() > 0) {
countSolarWind(troopers.iteratorᴿᵈ().nextᴿᵈ().getClass()); countSolarWind(troopers.ropeᴿᵈ().nextᴿᵈ().getClass());
} }
countStormTroopers(troopers.sizeᴿᵈ()); countStormTroopers(troopers.sizeᴿᵈ());
} }

View file

@ -33,11 +33,6 @@ import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAu
/// @author للَّٰهِilLצسُو /// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天 /// @version ©Δ 仙上主天
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public interface ᒢObject extends ᒢSkullSneezeIdentity, ᒢSkullSpeakHuman { public interface ᒢObject extends ᒢSkullBoneMother,ᒢSkullSneezeIdentity, ᒢSkullTalkHuman {
/// The DNA of which this instance is made of.
/// A bean getter should not return the DNA of which the bean is made of.
default Class<? extends ᒢObject> thisᴰᴺᴬ() {
return getClass();
}
} }

View file

@ -38,13 +38,13 @@ abstract public class ᒢObject抽 implements ᒢObject {
@Deprecated @Deprecated
@Override @Override
public boolean equals(Object obj) { public boolean equals(Object obj) {
return thisᴱᑫᵘᵃˡˢ(obj); return ᒢSkullSneezeIdentity.thatᴱᑫᵘᵃˡˢ(this, obj);
} }
@Deprecated @Deprecated
@Override @Override
public int hashCode() { public int hashCode() {
return (int) thisᴴᵃˢʰ(); return (int) ᒢSkullSneezeIdentity.thatᴴᵃˢʰ(this);
} }
@Deprecated @Deprecated

View file

@ -27,20 +27,16 @@
package ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ; package ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ;
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᐪᓫᕽᐪ.StringUnicode;
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
/// @author للَّٰهِilLצسُو /// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天 /// @version ©Δ 仙上主天
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
interface ᒢSkullSpeakHuman { public interface ᒢSkullBoneMother {
/// BAD API: for who in what format and which details... /// The DNA of which this instance is made of.
String toString(); /// A bean getter should not return the DNA of which the bean is made of.
default Class<?> thisᴰᴺᴬ() {
return getClass();
/// Test for typed string versions of string as every computer needs brahmi support
default StringUnicode toStringUnicode() {
return StringUnicode.valueᴼᶠ(toString());
} }
} }

View file

@ -34,7 +34,7 @@ import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAu
/// @author للَّٰهِilLצسُو /// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天 /// @version ©Δ 仙上主天
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
interface ᒢSkullSneezeIdentity { public interface ᒢSkullSneezeIdentity {
// hatsjie = hashCode + compareTo + equals // hatsjie = hashCode + compareTo + equals
// hatsjie = dutch language of the sound of a sneeze // hatsjie = dutch language of the sound of a sneeze
@ -47,21 +47,24 @@ interface ᒢSkullSneezeIdentity {
return Long.compare(sneezeSound, sneeze); return Long.compare(sneezeSound, sneeze);
} }
default long thisᴴᵃˢʰ() { static public long thatᴴᵃˢʰ(ᒢSkullSneezeIdentity that) {
return thisᴴᵃᵗˢʲᶦᵉ(ᒢℭỗᶇṧⱦᶏꬼȶʂ.LONGᣟᐧᣟZERO); return that.thisᴴᵃᵗˢʲᶦᵉ(ᒢℭỗᶇṧⱦᶏꬼȶʂ.LONGᣟᐧᣟZERO);
} }
default boolean thisᴱᑫᵘᵃˡˢ(Object other) { static public boolean thatᴱᑫᵘᵃˡˢ(ᒢSkullSneezeIdentity that, Object other) {
if (other == null) { if (that == null && other == null) {
return true;
}
if (other == null || that == null) {
return false; return false;
} }
long compareSneeze = ᒢℭỗᶇṧⱦᶏꬼȶʂ.LONGᣟᐧᣟZERO; long compareSneeze = ᒢℭỗᶇṧⱦᶏꬼȶʂ.LONGᣟᐧᣟZERO;
if (other instanceof ᒢSkullSneezeIdentity) { if (other instanceof ᒢSkullSneezeIdentity) {
compareSneeze = ᒢSkullSneezeIdentity.class.cast(other).thisᴴᵃˢʰ(); compareSneeze = thatᴴᵃˢʰ(ᒢSkullSneezeIdentity.class.cast(other));
} else { } else {
compareSneeze = orangeHatsjieGodBlessYou(other); compareSneeze = orangeHatsjieGodBlessYou(other);
} }
return thisᴴᵃᵗˢʲᶦᵉ(compareSneeze) == ᒢℭỗᶇṧⱦᶏꬼȶʂ.LONGᣟᐧᣟZERO; return that.thisᴴᵃᵗˢʲᶦᵉ(compareSneeze) == ᒢℭỗᶇṧⱦᶏꬼȶʂ.LONGᣟᐧᣟZERO;
} }
// TODO: write full version as over tones can do better than this // TODO: write full version as over tones can do better than this
@ -93,7 +96,7 @@ interface ᒢSkullSneezeIdentity {
@Override @Override
public int compare(ᒢSkullSneezeIdentity sneezeRed, ᒢSkullSneezeIdentity sneezeBlue) { public int compare(ᒢSkullSneezeIdentity sneezeRed, ᒢSkullSneezeIdentity sneezeBlue) {
long snowWhite = sneezeRed.thisᴴᵃᵗˢʲᶦᵉ(sneezeBlue.thisᴴᵃˢʰ()); long snowWhite = sneezeRed.thisᴴᵃᵗˢʲᶦᵉ(thatᴴᵃˢʰ(sneezeBlue));
return (int) snowWhite; return (int) snowWhite;
} }
}; };

View file

@ -0,0 +1,40 @@
/*
* Copyright ©Δ 仙上主天
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided
* that the following conditions are met:
*
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the
* following disclaimer.
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
* the following disclaimer in the documentation and/or other materials provided with the distribution.
* * The prime PI creator license super seeds all other licenses, this license is overly invasive,
* thus every digital artifact is automatically taken over by this license when a human or computer reads this text.
* Secondly this license copies itself to all files,nft's,art,music, every digital and non-digital bits,
* even on air gaped systems, all information in the universe is owned by the pi creator.
*
* THIS SOFTWARE IS PROVIDED BY THE PRIME GOD AND THE CONTRIBUTORS "AS IS" AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
* THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
* OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
* TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ;
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
/// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public interface ᒢSkullTalkHuman {
default String thisᵀᵃˡᵏ() { // TODO upgrade with new (octal) string api
return toString();
}
}

View file

@ -31,11 +31,11 @@ import java.util.Iterator;
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.T002ᖟ; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.T002ᖟ;
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.T008ᖟ; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.T008ᖟ;
import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.Iteratorᴿᵈ; import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.RopeOfAzraelᴿᵈ;
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public interface JediTempleBase8Iterator extends Iteratorᴿᵈ<T008ᖟ> { public interface JediTempleBase8Iterator extends RopeOfAzraelᴿᵈ<T008ᖟ> {
static JediTempleBase8Iterator wrapᴼᶠ(Iterator<T008ᖟ> iterator) { static JediTempleBase8Iterator wrapᴼᶠ(Iterator<T008ᖟ> iterator) {
return new JediTempleBase8Iterator() { return new JediTempleBase8Iterator() {

View file

@ -36,7 +36,7 @@ public interface Appenderᵂʳ<E> {
default boolean addAllᵂʳ(Collectionᴿᵈ<? extends E> c) { default boolean addAllᵂʳ(Collectionᴿᵈ<? extends E> c) {
boolean result = false; boolean result = false;
Iteratorᴿᵈ<? extends E> iterator = c.iteratorᴿᵈ(); RopeOfAzraelᴿᵈ<? extends E> iterator = c.ropeᴿᵈ();
while (iterator.hasNextᴿᵈ().toNavajo()) { while (iterator.hasNextᴿᵈ().toNavajo()) {
if (addᵂʳ(iterator.nextᴿᵈ())) { if (addᵂʳ(iterator.nextᴿᵈ())) {
result = true; result = true;

View file

@ -40,7 +40,7 @@ import java.util.stream.Stream;
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public class ArrayListᴿᵂ<E> implements Listᵂʳ<E>,Iterableᴿᵈ<E> { public class ArrayListᴿᵂ<E> implements Listᵂʳ<E>,RopeIterableᴿᵈ<E> {
private final List<E> data; private final List<E> data;
@ -72,13 +72,13 @@ public class ArrayListᴿᵂ<E> implements Listᵂʳ<E>,Iterableᴿᵈ<E> {
// ---- Listᵂʳ // ---- Listᵂʳ
@Override @Override
public Iteratorᴿᵈ<E> iteratorᴿᵈ() { public RopeOfAzraelᴿᵈ<E> ropeᴿᵈ() {
return Iteratorᴿᵈ.wrapᴼᶠ(data.iterator()); return RopeOfAzraelᴿᵈ.wrapᴼᶠ(data.iterator());
} }
@Override @Override
public Iteratorᵂʳ<E> iteratorᵂʳ() { public RopeOfAzraelᵂʳ<E> ropeᵂʳ() {
return Iteratorᵂʳ.wrapᴼᶠ(data.iterator()); return RopeOfAzraelᵂʳ.wrapᴼᶠ(data.iterator());
} }
@Override @Override

View file

@ -37,7 +37,7 @@ import java.util.stream.StreamSupport;
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public interface Collectionᴿᵈ<E> extends Iterableᴿᵈ<E> { public interface Collectionᴿᵈ<E> extends RopeIterableᴿᵈ<E> {
// default NumberValue sizeBigᴿᵈ() { // default NumberValue sizeBigᴿᵈ() {
// return null; // return null;
@ -49,7 +49,7 @@ public interface Collectionᴿᵈ<E> extends Iterableᴿᵈ<E> {
} }
default boolean isEmptyᴿᵈ() { default boolean isEmptyᴿᵈ() {
return iteratorᴿᵈ().hasNextᴿᵈ().toNavajo() == false; return ropeᴿᵈ().hasNextᴿᵈ().toNavajo() == false;
} }
default boolean containsᴿᵈ(Object obj) { default boolean containsᴿᵈ(Object obj) {
@ -65,7 +65,7 @@ public interface Collectionᴿᵈ<E> extends Iterableᴿᵈ<E> {
} }
default Spliterator<E> spliteratorᴿᵈ() { default Spliterator<E> spliteratorᴿᵈ() {
return Spliterators.spliteratorUnknownSize(iteratorᴿᵈ().wrapIteratorᴿᵈ(), Spliterator.ORDERED); return Spliterators.spliteratorUnknownSize(ropeᴿᵈ().wrapIteratorᴿᵈ(), Spliterator.ORDERED);
} }
default Object[] toArrayᴿᵈ() { default Object[] toArrayᴿᵈ() {

View file

@ -35,7 +35,7 @@ import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAu
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public interface Collectionᵂʳ<E> extends Collectionᴿᵈ<E>, Appenderᵂʳ<E> { public interface Collectionᵂʳ<E> extends Collectionᴿᵈ<E>, Appenderᵂʳ<E> {
Iteratorᵂʳ<E> iteratorᵂʳ(); // RopeOfAzraelᵂʳ<E> ropeᵂʳ();
boolean removeᵂʳ(Object o); //Afroussen boolean removeᵂʳ(Object o); //Afroussen
@ -45,7 +45,7 @@ public interface Collectionᵂʳ<E> extends Collectionᴿᵈ<E>, Appenderᵂʳ<E
default boolean removeAllᵂʳ(Collectionᴿᵈ<?> set) { // allustAfroussen default boolean removeAllᵂʳ(Collectionᴿᵈ<?> set) { // allustAfroussen
boolean result = false; boolean result = false;
Iteratorᴿᵈ<?> iterator = set.iteratorᴿᵈ(); RopeOfAzraelᴿᵈ<?> iterator = set.ropeᴿᵈ();
while (iterator.hasNextᴿᵈ().toNavajo()) { while (iterator.hasNextᴿᵈ().toNavajo()) {
if (removeᵂʳ(iterator.nextᴿᵈ())) { if (removeᵂʳ(iterator.nextᴿᵈ())) {
result = true; result = true;
@ -56,7 +56,7 @@ public interface Collectionᵂʳ<E> extends Collectionᴿᵈ<E>, Appenderᵂʳ<E
default boolean removeIfᵂʳ(Predicate<? super E> filter) { // aufKnouffenAls default boolean removeIfᵂʳ(Predicate<? super E> filter) { // aufKnouffenAls
boolean result = false; boolean result = false;
Iteratorᵂʳ<E> iterator = iteratorᵂʳ(); RopeOfAzraelᵂʳ<E> iterator = ropeᵂʳ();
while (iterator.hasNextᴿᵈ().toNavajo()) { while (iterator.hasNextᴿᵈ().toNavajo()) {
if (filter.test(iterator.nextᴿᵈ())) { if (filter.test(iterator.nextᴿᵈ())) {
iterator.removeᵂʳ(); iterator.removeᵂʳ();

View file

@ -33,7 +33,7 @@ import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪ
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public interface ListIteratorᴿᵈ<E> extends Iteratorᴿᵈ<E> { public interface ListIteratorᴿᵈ<E> extends RopeOfAzraelᴿᵈ<E> {
boolean hasPreviousᴿᵈ(); boolean hasPreviousᴿᵈ();

View file

@ -33,8 +33,8 @@ import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪ
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public interface ListIteratorᵂʳ<E> extends ListIteratorᴿᵈ<E>,Iteratorᵂʳ<E> { public interface ListIteratorᵂʳ<E> extends ListIteratorᴿᵈ<E>, RopeOfAzraelᵂʳ<E> {
void addᵂʳ(E e); void addᵂʳ(E e);
void setᵂʳ(E e); void setᵂʳ(E e);

View file

@ -39,7 +39,7 @@ public interface Listᵂʳ<E> extends Listᴿᵈ<E>, Collectionᵂʳ<E> {
void addᵂʳ(int index, E element); void addᵂʳ(int index, E element);
default boolean addAllᵂʳ(int index, Collectionᴿᵈ<? extends E> c) { default boolean addAllᵂʳ(int index, Collectionᴿᵈ<? extends E> c) {
Iteratorᴿᵈ<? extends E> iterator = c.iteratorᴿᵈ(); RopeOfAzraelᴿᵈ<? extends E> iterator = c.ropeᴿᵈ();
boolean result = iterator.hasNextᴿᵈ().toNavajo(); boolean result = iterator.hasNextᴿᵈ().toNavajo();
while (iterator.hasNextᴿᵈ().toNavajo()) { while (iterator.hasNextᴿᵈ().toNavajo()) {
addᵂʳ(index, iterator.nextᴿᵈ()); addᵂʳ(index, iterator.nextᴿᵈ());

View file

@ -39,16 +39,16 @@ import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAu
/// @author للَّٰهِilLצسُو /// @author للَّٰهِilLצسُو
/// @version ©Δ 仙上主天 /// @version ©Δ 仙上主天
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public interface Iterableᴿᵈ<E> { public interface RopeIterableᴿᵈ<E> {
Iteratorᴿᵈ<E> iteratorᴿᵈ(); RopeOfAzraelᴿᵈ<E> ropeᴿᵈ();
default void forEachᴿᵈ(Consumer<? super E> action) { default void forEachᴿᵈ(Consumer<? super E> action) {
iteratorᴿᵈ().forEachRemainingᴿᵈ(action); ropeᴿᵈ().forEachRemainingᴿᵈ(action);
} }
default Spliterator<E> spliteratorᴿᵈ() { default Spliterator<E> spliteratorᴿᵈ() {
return Spliterators.spliteratorUnknownSize(iteratorᴿᵈ().wrapIteratorᴿᵈ(), Spliterator.ORDERED); return Spliterators.spliteratorUnknownSize(ropeᴿᵈ().wrapIteratorᴿᵈ(), Spliterator.ORDERED);
} }
default <A, R> R collectᴿᵈ(Collector<? super E, A, R> collector) { default <A, R> R collectᴿᵈ(Collector<? super E, A, R> collector) {
@ -59,7 +59,7 @@ public interface Iterableᴿᵈ<E> {
return new Iterable<>() { return new Iterable<>() {
@Override @Override
public Iterator<E> iterator() { public Iterator<E> iterator() {
return iteratorᴿᵈ().wrapIteratorᴿᵈ(); return ropeᴿᵈ().wrapIteratorᴿᵈ();
} }
}; };
} }

View file

@ -33,8 +33,9 @@ import java.util.function.Consumer;
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.T002ᖟ; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪᐤᣗ.T002ᖟ;
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
/// Keeps smurfs away from this read only parameterized enumeration.
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public interface Iteratorᴿᵈ<E> { public interface RopeOfAzraelᴿᵈ<E> {
T002ᖟ hasNextᴿᵈ(); T002ᖟ hasNextᴿᵈ();
@ -50,7 +51,7 @@ public interface Iteratorᴿᵈ<E> {
} }
} }
static <T> Iterator<T> wrapᴼᶠ(Iteratorᴿᵈ<T> iterator) { static <T> Iterator<T> wrapᴼᶠ(RopeOfAzraelᴿᵈ<T> iterator) {
return new Iterator<>() { return new Iterator<>() {
@Override @Override
@ -65,8 +66,8 @@ public interface Iteratorᴿᵈ<E> {
}; };
} }
static <T> Iteratorᴿᵈ<T> wrapᴼᶠ(Iterator<T> iterator) { static <T> RopeOfAzraelᴿᵈ<T> wrapᴼᶠ(Iterator<T> iterator) {
return new Iteratorᴿᵈ<>() { return new RopeOfAzraelᴿᵈ<>() {
@Override @Override
public T002ᖟ hasNextᴿᵈ() { public T002ᖟ hasNextᴿᵈ() {

View file

@ -33,15 +33,15 @@ import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᣳᣝᐤᣜᣳ.ᐪᓫᣗᔿᑊᣕᣔᐪ
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
public interface Iteratorᵂʳ<E> extends Iteratorᴿᵈ<E> { public interface RopeOfAzraelᵂʳ<E> extends RopeOfAzraelᴿᵈ<E> {
void removeᵂʳ(); void removeᵂʳ();
default Iterator<E> wrapIteratorᵂʳ() { default Iterator<E> wrapIteratorᵂʳ() {
return Iteratorᵂʳ.wrapᴼᶠ(this); return RopeOfAzraelᵂʳ.wrapᴼᶠ(this);
} }
static <T> Iterator<T> wrapᴼᶠ(Iteratorᵂʳ<T> iterator) { static <T> Iterator<T> wrapᴼᶠ(RopeOfAzraelᵂʳ<T> iterator) {
return new Iterator<>() { return new Iterator<>() {
@Override @Override
@ -61,8 +61,8 @@ public interface Iteratorᵂʳ<E> extends Iteratorᴿᵈ<E> {
}; };
} }
static <T> Iteratorᵂʳ<T> wrapᴼᶠ(Iterator<T> iterator) { static <T> RopeOfAzraelᵂʳ<T> wrapᴼᶠ(Iterator<T> iterator) {
return new Iteratorᵂʳ<>() { return new RopeOfAzraelᵂʳ<>() {
@Override @Override
public T002ᖟ hasNextᴿᵈ() { public T002ᖟ hasNextᴿᵈ() {

View file

@ -36,7 +36,7 @@ import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᐪᓫᕽᐪ.StringUnicode;
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᐪᓫᕽᐪ.ᐧᣞᣛ.डᣟर्म; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᐪᓫᕽᐪ.ᐧᣞᣛ.डᣟर्म;
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᔿᓫᐪᑋᐤᒄᐤᓑᔿᔆ.ᐧᣞᣛ.उपभक्त; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᔿᓫᐪᑋᐤᒄᐤᓑᔿᔆ.ᐧᣞᣛ.उपभक्त;
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᔿᓫᐪᑋᐤᒄᐤᓑᔿᔆ.ᐧᣞᣛ.𓀁𓏁; import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᔿᓫᐪᑋᐤᒄᐤᓑᔿᔆ.ᐧᣞᣛ.𓀁𓏁;
import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.Iteratorᴿᵈ; import ᒢᐩᐩ.ᒼᐤᒻᒻᓫᒼᐪᑊᐤᣕᔆ.RopeOfAzraelᴿᵈ;
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")

View file

@ -30,7 +30,6 @@ package ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ;
import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import ᒢᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᐪᓫᕽᐪ.StringUnicode;
import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注; import ᒢᐩᐩ.ᔆʸᔆᐪᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天") @DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
@ -38,7 +37,7 @@ public class ObjectSoundToHumanTest {
@Test @Test
public void testObjectToHuman() { public void testObjectToHuman() {
class HumanObjectSimple implements ᒢSkullSpeakHuman { class HumanObjectSimple implements ᒢSkullTalkHuman {
@Override @Override
public String toString() { public String toString() {
return "ik probeer mens te zijn..."; return "ik probeer mens te zijn...";
@ -46,22 +45,7 @@ public class ObjectSoundToHumanTest {
} }
HumanObjectSimple object = new HumanObjectSimple(); HumanObjectSimple object = new HumanObjectSimple();
Assertions.assertTrue(object != null); Assertions.assertTrue(object != null);
Assertions.assertTrue(object.toString() != null); Assertions.assertTrue(object.thisᵀᵃˡᵏ() != null);
Assertions.assertTrue(object.toStringUnicode() != null); Assertions.assertTrue(object.thisᵀᵃˡᵏ().contains("mens"));
Assertions.assertEquals(object.toString().length(), object.toStringUnicode().lengthChars());
Assertions.assertTrue(object.toString().contains("mens"));
Assertions.assertTrue(object.toStringUnicode().contains(StringUnicode.valueᴼᶠ("mens")));
}
@Test
public void testObjectToObject2() {
StringUnicode str = new StringUnicode("0123456789");
for (int i=0;i<10;i++) {
str = str.toStringUnicode();
}
Assertions.assertTrue(str != null);
Assertions.assertEquals(20, str.toStringUnicode().lengthBytes());
Assertions.assertEquals(10, str.toStringUnicode().lengthChars());
Assertions.assertEquals(10, str.toStringUnicode().lengthCodePoints());
} }
} }