Work in progress
This commit is contained in:
parent
1b6fc01061
commit
d3c4cf0b0c
|
@ -63,6 +63,7 @@ When hyperdrive is running just start the jar file with;
|
||||||
### Project Launch IDE
|
### Project Launch IDE
|
||||||
|
|
||||||
Run "mvn package" after every git pull.
|
Run "mvn package" after every git pull.
|
||||||
|
(note: bassbone may fail sometimes, just run maven again and it works.....)
|
||||||
|
|
||||||
Run the main class from gdxapp4d-boot-desktop; love.distributedrebirth.gdxapp4d.boot.desktop.GDXAppDesktopLauncher
|
Run the main class from gdxapp4d-boot-desktop; love.distributedrebirth.gdxapp4d.boot.desktop.GDXAppDesktopLauncher
|
||||||
|
|
||||||
|
|
|
@ -66,7 +66,7 @@ public class NotepadDeskApp extends AbstractDeskApp implements DeskAppRenderer,
|
||||||
public NotepadDeskApp(BundleContext context, VrGem4Unicode4DService unicode4DService3) {
|
public NotepadDeskApp(BundleContext context, VrGem4Unicode4DService unicode4DService3) {
|
||||||
|
|
||||||
toBBC().UNHOLY_SPELL(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(Ꝑŕḯṿª₮ḕ.GHOST_BUNDLE, context); // tmp test
|
toBBC().UNHOLY_SPELL(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(Ꝑŕḯṿª₮ḕ.GHOST_BUNDLE, context); // tmp test
|
||||||
Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
||||||
//this.unicode4DService = unicode4DService;
|
//this.unicode4DService = unicode4DService;
|
||||||
|
|
||||||
this.gridBuffer = new int[gridHeight][gridWidth];
|
this.gridBuffer = new int[gridHeight][gridWidth];
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package love.distributedrebirth.bassboon;
|
package love.distributedrebirth.bassboon;
|
||||||
|
|
||||||
|
import java.lang.instrument.Instrumentation;
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
@ -12,6 +13,8 @@ import java.util.concurrent.locks.ReadWriteLock;
|
||||||
import java.util.concurrent.locks.ReentrantReadWriteLock;
|
import java.util.concurrent.locks.ReentrantReadWriteLock;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnDuytsFlüstern注;
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnExport注;
|
||||||
import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnꝐŕḯṿª₮ḕ;
|
import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||||
import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ;
|
import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ;
|
||||||
import love.distributedrebirth.bassboon.death.BãßBȍőnCoffin;
|
import love.distributedrebirth.bassboon.death.BãßBȍőnCoffin;
|
||||||
|
@ -21,10 +24,16 @@ import love.distributedrebirth.bassboon.death.BãßBȍőnCoffinGhostSpell;
|
||||||
import love.distributedrebirth.bassboon.death.BãßBȍőnCoffinGhostSpellLock;
|
import love.distributedrebirth.bassboon.death.BãßBȍőnCoffinGhostSpellLock;
|
||||||
import love.distributedrebirth.bassboon.death.spider.BãßBȍőnSpider;
|
import love.distributedrebirth.bassboon.death.spider.BãßBȍőnSpider;
|
||||||
import love.distributedrebirth.bassboon.death.spider.BãßBȍőnSpiderSperm;
|
import love.distributedrebirth.bassboon.death.spider.BãßBȍőnSpiderSperm;
|
||||||
|
import love.distributedrebirth.bassboon.death.spider.BãßBȍőnSpiderWire注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.ObjectScopeLimitΔ邪ᙾ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.Runnableբ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelLocalizer邪ᙾ;
|
||||||
import love.distributedrebirth.bassboon.jpp.util.concurrent.locks.DummyReadWriteLock;
|
import love.distributedrebirth.bassboon.jpp.util.concurrent.locks.DummyReadWriteLock;
|
||||||
|
import love.distributedrebirth.bassboon.yd.abacus.BãßBȍőnAbacusInstanceMBeanʸᴰ;
|
||||||
|
import love.distributedrebirth.bassboon.yd.jmx.CounterGuageᴶᴹˣ;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Runtime for static bass noise.
|
* Runtime for static bass noise ௸.
|
||||||
*/
|
*/
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface Bãß {
|
public interface Bãß {
|
||||||
|
@ -32,14 +41,33 @@ public interface Bãß {
|
||||||
/**
|
/**
|
||||||
* Sarcophagus aggregates Y-Dimensions.
|
* Sarcophagus aggregates Y-Dimensions.
|
||||||
*/
|
*/
|
||||||
static enum 石棺ʸᴰ {
|
@BãßBȍőnDuytsFlüstern注(purpose = "Framework startup.")
|
||||||
ײاللهזأَكْبَرײ;
|
@BãßBȍőnExport注(group = "love.distributedrebirth.bassboon")
|
||||||
private final Map<Object, BȍőnGrave> יְרוּשָׁלַיִם = new WeakHashMap<>();
|
static enum 石棺ʸᴰ implements BãßBȍőnAbacusInstanceMBeanʸᴰ<石棺ʸᴰ> {
|
||||||
private final List<BãßBȍőnSpiderSperm> സ്പൈഡർബീജം = Collections.synchronizedList(new ArrayList<>());
|
أَكْبَرײꣻײالله;
|
||||||
|
private final Map<Object, BȍőnGrave> יְרוּשָׁלַיִםᵗʷᵒ = new WeakHashMap<>();
|
||||||
|
private final List<BãßBȍőnSpiderSperm> സ്പൈഡർബീജം = Bãß.характеристики.熱蘭遮城.ןװיזױזזךזדןװיױןױדודו();
|
||||||
private final 𝔅𝔬𝔫𝔢𝔏𝔬𝔞𝔡𝔢𝔯ʸᴰ 𝔪𝔬𝔬𝔫𝔖𝔭𝔢𝔩𝔩𝔚𝔬𝔯𝔨 = Bãß.характеристики.熱蘭遮城.ןיװיזױױדודזיןןןזךױזזז();
|
private final 𝔅𝔬𝔫𝔢𝔏𝔬𝔞𝔡𝔢𝔯ʸᴰ 𝔪𝔬𝔬𝔫𝔖𝔭𝔢𝔩𝔩𝔚𝔬𝔯𝔨 = Bãß.характеристики.熱蘭遮城.ןיװיזױױדודזיןןןזךױזזז();
|
||||||
private final ReadWriteLock 魎 = Bãß.характеристики.熱蘭遮城.ןיװיןזךױזױדזיןןזזזױדו(); // Mononoke Lock
|
private final ReadWriteLock 魎 = Bãß.характеристики.熱蘭遮城.ןיװיןזךױזױדזיןןזזזױדו();
|
||||||
private final Lock 魎_BIBLE = 魎.readLock();
|
private final Lock 魎_いい人生 = 魎.readLock(); // mononoke good life
|
||||||
private final Lock 魎_SHEMIRA = 魎.writeLock();
|
private final Lock 魎_שמירה = 魎.writeLock(); // mononoke death guard
|
||||||
|
@BãßBȍőnSpiderWire注(name = "boonCntInit")
|
||||||
|
private CounterGuageᴶᴹˣ boonCntInit = new CounterGuageᴶᴹˣ("init", "only"); // TODO: fix to protected so this is not possible...
|
||||||
|
@BãßBȍőnSpiderWire注(name = "boonCntInit")
|
||||||
|
private CounterGuageᴶᴹˣ boonCntLock = new CounterGuageᴶᴹˣ("init", "only");
|
||||||
|
@BãßBȍőnSpiderWire注(name = "bassCntSpiderEmbryos")
|
||||||
|
private CounterGuageᴶᴹˣ bassCntSpiderEmbryos = new CounterGuageᴶᴹˣ("init", "only");
|
||||||
|
@BãßBȍőnSpiderWire注(name = "bassCntCoffinToGrave")
|
||||||
|
private CounterGuageᴶᴹˣ bassCntCoffinToGrave = new CounterGuageᴶᴹˣ("init", "only");
|
||||||
|
@BãßBȍőnSpiderWire注(name = "bassCntDigToGrave")
|
||||||
|
private CounterGuageᴶᴹˣ bassCntDigToGrave = new CounterGuageᴶᴹˣ("init", "only");
|
||||||
|
@BãßBȍőnSpiderWire注(name = "bassCntCoffinBurried")
|
||||||
|
private CounterGuageᴶᴹˣ bassCntCoffinBurried = new CounterGuageᴶᴹˣ("init", "only");
|
||||||
|
private Runnableբ.जंगम Г̄Ѫӏ = () -> {
|
||||||
|
// self first boot, one time only without if statements...
|
||||||
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.挖ᵀᵒ(Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله).init(Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله);
|
||||||
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.Г̄Ѫӏ = () -> boonCntInit.increment();
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sarcophagus is closed for humans.
|
* Sarcophagus is closed for humans.
|
||||||
|
@ -52,6 +80,8 @@ public interface Bãß {
|
||||||
* RÅ...........Init
|
* RÅ...........Init
|
||||||
*/
|
*/
|
||||||
public <T extends BãßBȍőnʸᴰ<T>> void 𓂀ױןייזדזיודזיןןזזזןױ𓉢(BãßBȍőnʸᴰ<T> derKnochen) {
|
public <T extends BãßBȍőnʸᴰ<T>> void 𓂀ױןייזדזיודזיןןזזזןױ𓉢(BãßBȍőnʸᴰ<T> derKnochen) {
|
||||||
|
//boonCntInit.increment();
|
||||||
|
Г̄Ѫӏ.दौड़ना();
|
||||||
挖ᵀᵒ(derKnochen).init(derKnochen);
|
挖ᵀᵒ(derKnochen).init(derKnochen);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -59,6 +89,7 @@ public interface Bãß {
|
||||||
* Grave Lock
|
* Grave Lock
|
||||||
*/
|
*/
|
||||||
public <T extends BãßBȍőnʸᴰ<T>> void 墳ᴸᵒᶜᵏ(BãßBȍőnʸᴰ<T> derKnochen) {
|
public <T extends BãßBȍőnʸᴰ<T>> void 墳ᴸᵒᶜᵏ(BãßBȍőnʸᴰ<T> derKnochen) {
|
||||||
|
boonCntLock.increment();
|
||||||
挖ᵀᵒ(derKnochen).lock(derKnochen);
|
挖ᵀᵒ(derKnochen).lock(derKnochen);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -66,6 +97,7 @@ public interface Bãß {
|
||||||
* Spider Embryo Add
|
* Spider Embryo Add
|
||||||
*/
|
*/
|
||||||
public void 蜘蛛胚ᴬᵈᵈ(BãßBȍőnSpiderSperm spinneSperma) {
|
public void 蜘蛛胚ᴬᵈᵈ(BãßBȍőnSpiderSperm spinneSperma) {
|
||||||
|
bassCntSpiderEmbryos.increment();
|
||||||
സ്പൈഡർബീജം.add(spinneSperma);
|
സ്പൈഡർബീജം.add(spinneSperma);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -73,9 +105,11 @@ public interface Bãß {
|
||||||
* Coffin Of
|
* Coffin Of
|
||||||
*/
|
*/
|
||||||
protected <T extends BãßBȍőnʸᴰ<T>> BãßBȍőnCoffin 棺ᴼᶠ(BãßBȍőnʸᴰ<T> derKnochen) {
|
protected <T extends BãßBȍőnʸᴰ<T>> BãßBȍőnCoffin 棺ᴼᶠ(BãßBȍőnʸᴰ<T> derKnochen) {
|
||||||
|
bassCntCoffinToGrave.increment();
|
||||||
return 挖ᵀᵒ(derKnochen);
|
return 挖ᵀᵒ(derKnochen);
|
||||||
}
|
}
|
||||||
protected <T extends BãßBȍőnʸᴰ<T>, G extends BãßBȍőnCoffinDuytschenᵗˣᵗ> G 棺ᴼᶠ(BãßBȍőnʸᴰ<T> derKnochen, Class<G> duytschen) {
|
protected <T extends BãßBȍőnʸᴰ<T>, G extends BãßBȍőnCoffinDuytschenᵗˣᵗ> G 棺ᴼᶠ(BãßBȍőnʸᴰ<T> derKnochen, Class<G> duytschen) {
|
||||||
|
bassCntCoffinToGrave.increment();
|
||||||
return 挖ᵀᵒ(derKnochen).ₜₒI18Nᵗˣᵗ(duytschen);
|
return 挖ᵀᵒ(derKnochen).ₜₒI18Nᵗˣᵗ(duytschen);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -83,21 +117,23 @@ public interface Bãß {
|
||||||
* Dig To
|
* Dig To
|
||||||
*/
|
*/
|
||||||
private <T extends BãßBȍőnʸᴰ<T>> BȍőnGrave 挖ᵀᵒ(BãßBȍőnʸᴰ<T> derKnochen) {
|
private <T extends BãßBȍőnʸᴰ<T>> BȍőnGrave 挖ᵀᵒ(BãßBȍőnʸᴰ<T> derKnochen) {
|
||||||
|
bassCntDigToGrave.increment();
|
||||||
BȍőnGrave 𓁀 = null;
|
BȍőnGrave 𓁀 = null;
|
||||||
魎_BIBLE.lock();
|
魎_いい人生.lock();
|
||||||
try {
|
try {
|
||||||
𓁀 = יְרוּשָׁלַיִם.get(derKnochen);
|
𓁀 = יְרוּשָׁלַיִםᵗʷᵒ.get(derKnochen);
|
||||||
} finally {
|
} finally {
|
||||||
魎_BIBLE.unlock();
|
魎_いい人生.unlock();
|
||||||
}
|
}
|
||||||
if (𓁀 == null) {
|
if (𓁀 == null) {
|
||||||
魎_SHEMIRA.lock();
|
魎_שמירה.lock();
|
||||||
try {
|
try {
|
||||||
𓁀 = new BȍőnGrave(𝔪𝔬𝔬𝔫𝔖𝔭𝔢𝔩𝔩𝔚𝔬𝔯𝔨, സ്പൈഡർബീജം);
|
𓁀 = new BȍőnGrave(𝔪𝔬𝔬𝔫𝔖𝔭𝔢𝔩𝔩𝔚𝔬𝔯𝔨, സ്പൈഡർബീജം);
|
||||||
יְרוּשָׁלַיִם.put(derKnochen, 𓁀);
|
יְרוּשָׁלַיִםᵗʷᵒ.put(derKnochen, 𓁀);
|
||||||
} finally {
|
} finally {
|
||||||
魎_SHEMIRA.unlock();
|
魎_שמירה.unlock();
|
||||||
}
|
}
|
||||||
|
bassCntCoffinBurried.increment();
|
||||||
}
|
}
|
||||||
return 𓁀;
|
return 𓁀;
|
||||||
}
|
}
|
||||||
|
@ -294,15 +330,28 @@ public interface Bãß {
|
||||||
protected ReadWriteLock ןיװיןזךױזױדזיןןזזזױדו() {
|
protected ReadWriteLock ןיװיןזךױזױדזיןןזזזױדו() {
|
||||||
ױזדיןזךזןיןױז();
|
ױזדיןזךזןיןױז();
|
||||||
if (יזױזװיךןךױזױ) {
|
if (יזױזװיךןךױזױ) {
|
||||||
//System.out.println("LOCK: ReentrantReadWriteLock");
|
|
||||||
return new ReentrantReadWriteLock();
|
return new ReentrantReadWriteLock();
|
||||||
} else {
|
}
|
||||||
//System.out.println("LOCK: DummyReadWriteLock");
|
|
||||||
return new DummyReadWriteLock();
|
return new DummyReadWriteLock();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected <K,V> Map<K,V> ןיזזױזזךױװיןװיןױדזיװיךזדודו() {
|
||||||
|
ױזדיןזךזןיןױז();
|
||||||
|
if (יזױזװיךןךױזױ) {
|
||||||
|
return Collections.synchronizedMap(new HashMap<>());
|
||||||
|
}
|
||||||
|
return new HashMap<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
protected class װошибкаיзапускаיракетыװ extends RuntimeException {
|
protected <T> List<T> ןװיזױזזךזדןװיױןױדודו() {
|
||||||
|
ױזדיןזךזןיןױז();
|
||||||
|
if (יזױזװיךןךױזױ) {
|
||||||
|
return Collections.synchronizedList(new ArrayList<>());
|
||||||
|
}
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected static class װошибкаיзапускаיракетыװ extends RuntimeException {
|
||||||
private static final long serialVersionUID = Bãß.ℭỗᶇṧⱦᶏꬼȶʂ.LONG_ONE;
|
private static final long serialVersionUID = Bãß.ℭỗᶇṧⱦᶏꬼȶʂ.LONG_ONE;
|
||||||
protected װошибкаיзапускаיракетыװ(Exception err) {
|
protected װошибкаיзапускаיракетыװ(Exception err) {
|
||||||
super(err);
|
super(err);
|
||||||
|
@ -310,6 +359,13 @@ public interface Bãß {
|
||||||
protected װошибкаיзапускаיракетыװ(String msg) {
|
protected װошибкаיзапускаיракетыװ(String msg) {
|
||||||
super(msg);
|
super(msg);
|
||||||
}
|
}
|
||||||
|
enum 邪ᙾ {
|
||||||
|
;
|
||||||
|
public static void agentmain(String agentArgs, Instrumentation inst) {// test
|
||||||
|
inst.addTransformer(new BabelLocalizer邪ᙾ(), true);
|
||||||
|
inst.addTransformer(new ObjectScopeLimitΔ邪ᙾ(), true);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,6 +21,10 @@ public interface BãßBȍőnʸᴰ<T extends BãßBȍőnʸᴰ<T>> {
|
||||||
// }
|
// }
|
||||||
|
|
||||||
default BãßBȍőnCoffin toBBC() {
|
default BãßBȍőnCoffin toBBC() {
|
||||||
return Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.棺ᴼᶠ(this); // ...to seek 6 bit BASIC death, so the blind can see
|
return Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.棺ᴼᶠ(this); // ...to seek 6 bit BASIC death, so the blind can see
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// static BãßBȍőnCoffin coffinOf(BãßBȍőnʸᴰ<?> boon) {
|
||||||
|
// return Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.棺ᴼᶠ(boon);
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package love.distributedrebirth.bassboon;
|
package love.distributedrebirth.bassboon;
|
||||||
|
|
||||||
|
import java.lang.annotation.Annotation;
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
|
@ -65,7 +66,7 @@ public final class DefaultBȍőnLoader implements Bãß.𝔅𝔬𝔫𝔢𝔏𝔬
|
||||||
|
|
||||||
for (Class<?> duytschenType:duytschenCoffins.keySet()) {
|
for (Class<?> duytschenType:duytschenCoffins.keySet()) {
|
||||||
BãßBȍőnCoffinDuytschenᵗˣᵗ duytschenCoffin = duytschenCoffins.get(duytschenType);
|
BãßBȍőnCoffinDuytschenᵗˣᵗ duytschenCoffin = duytschenCoffins.get(duytschenType);
|
||||||
//System.out.println("INIT.REG "+duytschenType+" senseResult="+duytschenCoffin);
|
//System.out.println("INIT.REG_TXT "+duytschenType+" senseResult="+duytschenCoffin);
|
||||||
spider.registrateEgg(duytschenType, new BãßBȍőnSpiderSilk() {
|
spider.registrateEgg(duytschenType, new BãßBȍőnSpiderSilk() {
|
||||||
@Override
|
@Override
|
||||||
public Object senseWire(BãßBȍőnʸᴰ<?> boonTmp, String name, String description)
|
public Object senseWire(BãßBȍőnʸᴰ<?> boonTmp, String name, String description)
|
||||||
|
@ -74,12 +75,24 @@ public final class DefaultBȍőnLoader implements Bãß.𝔅𝔬𝔫𝔢𝔏𝔬
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
for (Annotation anno:boon.getClass().getDeclaredAnnotations()) {
|
||||||
|
//System.out.println("INIT.REG_ANNO "+anno.annotationType());
|
||||||
|
spider.registrateEgg(anno.annotationType(), new BãßBȍőnSpiderSilk() {
|
||||||
|
@Override
|
||||||
|
public Object senseWire(BãßBȍőnʸᴰ<?> boonTmp, String name, String description)
|
||||||
|
throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||||
|
return anno;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Set<Class<?>> ydmods = new HashSet<>();
|
Set<Class<?>> ydmods = new HashSet<>();
|
||||||
for (PiratePhaseBoat boat : loadPirateBoats(boon)) {
|
for (PiratePhaseBoat boat : loadPirateBoats(boon)) {
|
||||||
//System.out.println("INIT.RUN "+boat.pirateClazz.getName());
|
//System.out.println("INIT.RUN "+boat.pirateClazz.getName());
|
||||||
|
|
||||||
if (ydmods.add(boat.pirateClazz.getDeclaringClass())) {
|
if (ydmods.add(boat.pirateClazz.getDeclaringClass())) {
|
||||||
|
//System.out.println("INIT.REG_MOD "+boat.pirateClazz.getDeclaringClass());
|
||||||
spider.registrateEgg(boat.pirateClazz.getDeclaringClass(), new BãßBȍőnSpiderSilk() {
|
spider.registrateEgg(boat.pirateClazz.getDeclaringClass(), new BãßBȍőnSpiderSilk() {
|
||||||
@Override
|
@Override
|
||||||
public Object senseWire(BãßBȍőnʸᴰ<?> boonTmp, String name, String description)
|
public Object senseWire(BãßBȍőnʸᴰ<?> boonTmp, String name, String description)
|
||||||
|
@ -93,7 +106,7 @@ public final class DefaultBȍőnLoader implements Bãß.𝔅𝔬𝔫𝔢𝔏𝔬
|
||||||
BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ soundOf = boat.pirate.init();
|
BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ soundOf = boat.pirate.init();
|
||||||
Class<?> soundOfType = soundOf.getClass().getInterfaces()[0]; // TOOD ....
|
Class<?> soundOfType = soundOf.getClass().getInterfaces()[0]; // TOOD ....
|
||||||
if (ydmods.add(soundOfType)) {
|
if (ydmods.add(soundOfType)) {
|
||||||
//System.out.println("INIT.SOUND "+soundOfType);
|
//System.out.println("INIT.REG_SND "+soundOfType);
|
||||||
spider.registrateEgg(soundOfType, new BãßBȍőnSpiderSilk() {
|
spider.registrateEgg(soundOfType, new BãßBȍőnSpiderSilk() {
|
||||||
@Override
|
@Override
|
||||||
public Object senseWire(BãßBȍőnʸᴰ<?> boonTmp, String name, String description)
|
public Object senseWire(BãßBȍőnʸᴰ<?> boonTmp, String name, String description)
|
||||||
|
@ -222,6 +235,10 @@ public final class DefaultBȍőnLoader implements Bãß.𝔅𝔬𝔫𝔢𝔏𝔬
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Class<?> findInterfaceByAnnotation(Class<?> clazz, Class<? extends Annotation> annoType) {
|
||||||
|
return walkInterfaces(clazz, new LinkedHashSet<>()).stream().filter(v -> v.isAnnotationPresent(annoType)).findFirst().get();
|
||||||
|
}
|
||||||
|
|
||||||
public static Set<Class<?>> walkInterfaces(Class<?> clazz, Set<Class<?>> result) {
|
public static Set<Class<?>> walkInterfaces(Class<?> clazz, Set<Class<?>> result) {
|
||||||
return walkTree(clazz, result, v -> Arrays.asList(v.getInterfaces()), v -> v.getSuperclass());
|
return walkTree(clazz, result, v -> Arrays.asList(v.getInterfaces()), v -> v.getSuperclass());
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,6 +22,9 @@ public interface BãßBȍőnAuthorʸᴰ<T extends BãßBȍőnʸᴰ<T>> extends B
|
||||||
@BãßBȍőnSpiderWire注
|
@BãßBȍőnSpiderWire注
|
||||||
private BãßBȍőnAuthorʸᴰ<?> boon;
|
private BãßBȍőnAuthorʸᴰ<?> boon;
|
||||||
|
|
||||||
|
// @BãßBȍőnSpiderWire注
|
||||||
|
// private BãßBȍőnAuthor注 anno;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BãßBȍőnAuthor響ᴼᶠ init() {
|
public BãßBȍőnAuthor響ᴼᶠ init() {
|
||||||
BãßBȍőnAuthor注 anno = boon.getClass().getAnnotation(BãßBȍőnAuthor注.class);
|
BãßBȍőnAuthor注 anno = boon.getClass().getAnnotation(BãßBȍőnAuthor注.class);
|
||||||
|
|
|
@ -13,4 +13,32 @@ public interface BãßBȍőnAuthor響ᴼᶠ extends BãßBȍőnꝐŕḯṿª₮
|
||||||
|
|
||||||
@BãßBȍőnDuytschen注(中國 = "版權", BASIC = "COPYRIGHT", 𓃬𓍄𓋹𓀭 = "𓎡𓊝𓇋𓇋𓂏𓇋𓇋𓈏")
|
@BãßBȍőnDuytschen注(中國 = "版權", BASIC = "COPYRIGHT", 𓃬𓍄𓋹𓀭 = "𓎡𓊝𓇋𓇋𓂏𓇋𓇋𓈏")
|
||||||
StringUnicode kopieërRecht();
|
StringUnicode kopieërRecht();
|
||||||
|
|
||||||
|
/*
|
||||||
|
@BãßBȍőnDuytsFlüstern注(purpose = "低音 骨 作者 噪音 的")
|
||||||
|
class 中國 extends BãßBȍőnAuthor響ᴬᵖᶦ {
|
||||||
|
public StringUnicode 姓名() { return ᵃpᵢ.naam(); }
|
||||||
|
public StringUnicode 版權() { return ᵃpᵢ.kopieërRecht(); }
|
||||||
|
|
||||||
|
public BãßBȍőnAuthor響ᴬᵖᶦ test() {
|
||||||
|
BãßBȍőnAuthor響ᴼᶠ res = null;
|
||||||
|
|
||||||
|
ᵃpᵢ.test().toApi(null);
|
||||||
|
|
||||||
|
return res.toApi(getClass());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@BãßBȍőnDuytsFlüstern注(purpose = "BASS_BONE_AUTHOR_NOISE_OF")
|
||||||
|
class BASIC extends BãßBȍőnAuthor響ᴬᵖᶦ {
|
||||||
|
public StringUnicode NAME() { return ᵃpᵢ.naam(); }
|
||||||
|
public StringUnicode COPYRIGHT() { return ᵃpᵢ.kopieërRecht(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
@BãßBȍőnDuytsFlüstern注(purpose = "𓃀𓅂𓋴 𓂿𓌇 𓅃𓅱𓋊𓌟𓁹 𓈖𓇋𓌗𓌇 𓅂𓏲𓆑")
|
||||||
|
class 𓃬𓍄𓋹𓀭 extends BãßBȍőnAuthor響ᴬᵖᶦ {
|
||||||
|
public StringUnicode 𓈖𓅂𓅓() { return ᵃpᵢ.naam(); }
|
||||||
|
public StringUnicode 𓎡𓊝𓇋𓇋𓂏𓇋𓇋𓈏() { return ᵃpᵢ.kopieërRecht(); }
|
||||||
|
}
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,6 +21,9 @@ public interface BãßBȍőnExportʸᴰ<T extends BãßBȍőnʸᴰ<T>> extends B
|
||||||
@BãßBȍőnSpiderWire注
|
@BãßBȍőnSpiderWire注
|
||||||
private BãßBȍőnExportʸᴰ<?> boon;
|
private BãßBȍőnExportʸᴰ<?> boon;
|
||||||
|
|
||||||
|
@BãßBȍőnSpiderWire注
|
||||||
|
private BãßBȍőnAuthor響ᴼᶠ frw;
|
||||||
|
|
||||||
@BãßBȍőnSpiderWire注
|
@BãßBȍőnSpiderWire注
|
||||||
private BãßBȍőnCoffinDuytschenᵗˣᵗ.𓃬𓍄𓋹𓀭 𓁀;
|
private BãßBȍőnCoffinDuytschenᵗˣᵗ.𓃬𓍄𓋹𓀭 𓁀;
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
package love.distributedrebirth.bassboon.clazz.pirate;
|
package love.distributedrebirth.bassboon.clazz.pirate;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.ObjectScopeLimitΔ;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface BãßBȍőnꝐŕḯṿª₮ḕ {
|
public interface BãßBȍőnꝐŕḯṿª₮ḕ extends ObjectScopeLimitΔ.ƉěꬵḭȵᶒModifier.Ꝑŕḯṿª₮ḕ {
|
||||||
// note: eclipse ide does not want to refactor items with the name "Ꝑŕḯṿª₮ḕ" in it.
|
// note: eclipse ide does not want to refactor items with the name "Ꝑŕḯṿª₮ḕ" in it.
|
||||||
|
|
||||||
default BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ init() {
|
default BãßBȍőnꝐŕḯṿª₮ḕ響ᴼᶠ init() {
|
||||||
|
|
|
@ -10,60 +10,38 @@ import love.distributedrebirth.bassboon.clazz.pirate.BãßBȍőnꝐŕḯṿª₮
|
||||||
public interface BãßBȍőnCoffinDuytschenᵗˣᵗ {
|
public interface BãßBȍőnCoffinDuytschenᵗˣᵗ {
|
||||||
|
|
||||||
static void ײₚᵤₜI18Nᵗˣᵗײ(Map<Class<? extends BãßBȍőnCoffinDuytschenᵗˣᵗ>,BãßBȍőnCoffinDuytschenᵗˣᵗ> map, BãßBȍőnCoffin wrap) {
|
static void ײₚᵤₜI18Nᵗˣᵗײ(Map<Class<? extends BãßBȍőnCoffinDuytschenᵗˣᵗ>,BãßBȍőnCoffinDuytschenᵗˣᵗ> map, BãßBȍőnCoffin wrap) {
|
||||||
|
BASIC tank1 = new BASIC();
|
||||||
|
tank1.init(wrap);
|
||||||
|
map.put(BASIC.class, tank1);
|
||||||
|
|
||||||
//BASIC basic2 = new BASIC();
|
ױןיװיזױױודזיןןזזזןױ tank2 = new ױןיװיזױױודזיןןזזזןױ();
|
||||||
//basic2.ײₐₚᵢI18Nᵗˣᵗײ(wrap);
|
tank2.init(wrap);
|
||||||
|
map.put(ױןיװיזױױודזיןןזזזןױ.class, tank2);
|
||||||
|
|
||||||
//ױןיװיזױױודזיןןזזזןױ tone = new ױןיװיזױױודזיןןזזזןױ();
|
中國 tank3 = new 中國();
|
||||||
//tone.ײₐₚᵢI18Nᵗˣᵗײ(wrap);
|
tank3.init(wrap);
|
||||||
|
map.put(中國.class, tank3);
|
||||||
|
|
||||||
map.put(BASIC.class, new BASIC().ײₐₚᵢI18Nᵗˣᵗײ(wrap));
|
𓃬𓍄𓋹𓀭 tank4 = new 𓃬𓍄𓋹𓀭();
|
||||||
map.put(ױןיװיזױױודזיןןזזזןױ.class, new ױןיװיזױױודזיןןזזזןױ().ײₐₚᵢI18Nᵗˣᵗײ(wrap));
|
tank4.init(wrap);
|
||||||
map.put(中國.class, new 中國().ײₐₚᵢI18Nᵗˣᵗײ(wrap));
|
map.put(𓃬𓍄𓋹𓀭.class, tank4);
|
||||||
map.put(𓃬𓍄𓋹𓀭.class, new 𓃬𓍄𓋹𓀭().ײₐₚᵢI18Nᵗˣᵗײ(wrap));
|
|
||||||
map.put(عربى.class, new عربى().ײₐₚᵢI18Nᵗˣᵗײ(wrap));
|
|
||||||
map.put(עִברִית.class, new עִברִית().ײₐₚᵢI18Nᵗˣᵗײ(wrap));
|
|
||||||
|
|
||||||
//map.put(BASIC.class, ₜₒBASICᵗˣᵗ(wrap));
|
عربى tank5 = new عربى();
|
||||||
//map.put(ױןיװיזױױודזיןןזזזןױ.class, tone);
|
tank5.init(wrap);
|
||||||
//map.put(中國.class, ₜₒ中國ᵗˣᵗ(wrap));
|
map.put(عربى.class, tank5);
|
||||||
//map.put(𓃬𓍄𓋹𓀭.class, ₜₒ𓃬𓍄𓋹𓀭ᵗˣᵗ(wrap));
|
|
||||||
//map.put(عربى.class, ₜₒعربىᵗˣᵗ(wrap));
|
עִברִית tank6 = new עִברִית();
|
||||||
//map.put(עִברִית.class, ₜₒעִברִיתᵗˣᵗ(wrap));
|
tank6.init(wrap);
|
||||||
|
map.put(עִברִית.class, tank6);
|
||||||
}
|
}
|
||||||
|
|
||||||
interface BãßBȍőnDuytschenApiᴺᵉᵘ<T> {
|
class BãßBȍőnCoffinDuytschenᴬᵖᶦ implements BãßBȍőnCoffinDuytschenᵗˣᵗ {
|
||||||
}
|
BãßBȍőnCoffin ᵃpᵢ;
|
||||||
|
void init(BãßBȍőnCoffin wrap) {
|
||||||
abstract class BãßBȍőnDuytschenBaseᴬᵖᶦ<T> implements BãßBȍőnDuytschenApiᴺᵉᵘ<T> {
|
this.ᵃpᵢ = wrap;
|
||||||
|
|
||||||
abstract protected <Y> Y ײₐₚᵢI18Nᵗˣᵗײ(T api);
|
|
||||||
}
|
|
||||||
|
|
||||||
class BãßBȍőnDuytschenI18Nᴬᵖᶦ<T> extends BãßBȍőnDuytschenBaseᴬᵖᶦ<T> {
|
|
||||||
|
|
||||||
protected T ᵃpᵢ;
|
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
|
||||||
@Override
|
|
||||||
protected <Y> Y ײₐₚᵢI18Nᵗˣᵗײ(T api) {
|
|
||||||
this.ᵃpᵢ = api;
|
|
||||||
return (Y) this;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class BãßBȍőnCoffinDuytschenᴬᵖᶦ extends BãßBȍőnDuytschenI18Nᴬᵖᶦ<BãßBȍőnCoffin> implements BãßBȍőnCoffinDuytschenᵗˣᵗ {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// opt1 = "ײ"
|
|
||||||
// opt2 = "ױ"
|
|
||||||
// opt6 = "ו"
|
|
||||||
// opt5 = "י"
|
|
||||||
// opt4 = "ז"
|
|
||||||
// opt7 = "ד"
|
|
||||||
// opt3 = "ן"
|
|
||||||
// opt8 = "ך"
|
|
||||||
class ױןיװיזױױודזיןןזזזןױ extends BãßBȍőnCoffinDuytschenᴬᵖᶦ {
|
class ױןיװיזױױודזיןןזזזןױ extends BãßBȍőnCoffinDuytschenᴬᵖᶦ {
|
||||||
public BãßBȍőnCoffinGhost ײןןזזײ(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ> ײןןךז) { return ᵃpᵢ.UNHOLY(ײןןךז); }
|
public BãßBȍőnCoffinGhost ײןןזזײ(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ> ײןןךז) { return ᵃpᵢ.UNHOLY(ײןןךז); }
|
||||||
public BãßBȍőnCoffinGhostSpell ײזזןןײןןךזזײ(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ> ײןןךז) { return ᵃpᵢ.UNHOLY_SPELL(ײןןךז); }
|
public BãßBȍőnCoffinGhostSpell ײזזןןײןןךזזײ(Class<? extends BãßBȍőnꝐŕḯṿª₮ḕ> ײןןךז) { return ᵃpᵢ.UNHOLY_SPELL(ײןןךז); }
|
||||||
|
|
|
@ -0,0 +1,53 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelLocalizer;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.Babelizeբᴬᵖᶦ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface Comparableբ<T> extends Comparable<T>,Babelizeբᴬᵖᶦ {
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface זױזזױזזזז<יזזױזזז> extends Comparableբ<יזזױזזז>, BabelLocalizer.Hinarī {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default int compareTo(יזזױזזז יזזי) {
|
||||||
|
return יזזיױזזזױזזזזז(יזזי);
|
||||||
|
}
|
||||||
|
|
||||||
|
int יזזיױזזזױזזזזז(יזזױזזז יזזי);
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 可比<仿製藥> extends Comparableբ<仿製藥>, BabelLocalizer.Mandarin {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default int compareTo(仿製藥 物) {
|
||||||
|
return 相比龸至(物);
|
||||||
|
}
|
||||||
|
|
||||||
|
int 相比龸至(仿製藥 物);
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface तुलनीय<जेनरिक> extends Comparableբ<जेनरिक>, BabelLocalizer.Hindi {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default int compareTo(जेनरिक चीज़) {
|
||||||
|
return तुलनाꣻप्रति(चीज़);
|
||||||
|
}
|
||||||
|
|
||||||
|
int तुलनाꣻप्रति(जेनरिक चीज़);
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 𓌭𓍝<𓉢> extends Comparableբ<𓉢>, BabelLocalizer.Hiero {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default int compareTo(𓉢 𓐠) {
|
||||||
|
return 𓍝(𓐠);
|
||||||
|
}
|
||||||
|
|
||||||
|
int 𓍝(𓉢 𓐠);
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,65 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang;
|
||||||
|
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©⍙ ∞ 仙上主天")
|
||||||
|
public enum ObjectScopeLimitΔ {
|
||||||
|
; // Empty scopes is a human thing
|
||||||
|
|
||||||
|
enum Ꝑŕḯṿª₮ḕ {
|
||||||
|
;
|
||||||
|
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@Target({ElementType.TYPE})
|
||||||
|
@interface DeathMatchPrefix注 {
|
||||||
|
String match();
|
||||||
|
String lastBreath();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@Target({ElementType.TYPE})
|
||||||
|
@interface DeathMatchName注 {
|
||||||
|
String match();
|
||||||
|
String lastBreath();
|
||||||
|
}
|
||||||
|
|
||||||
|
interface ꞱDentalClickNoise抽 extends Objectᴶᐩᐩ { // Africa type elevator smoke(abstract)
|
||||||
|
}
|
||||||
|
interface ꞱClassNameType抽 extends ꞱDentalClickNoise抽 {
|
||||||
|
}
|
||||||
|
interface ꞱClassScopeType抽 extends ꞱDentalClickNoise抽 {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum ƉěꬵḭȵᶒClazzName {
|
||||||
|
;
|
||||||
|
@Ꝑŕḯṿª₮ḕ.DeathMatchPrefix注(match = "Ʇ", lastBreath = "A african type elevator must start with: ")
|
||||||
|
public interface ꞱPrefix extends Ꝑŕḯṿª₮ḕ.ꞱClassNameType抽 {
|
||||||
|
}
|
||||||
|
@Ꝑŕḯṿª₮ḕ.DeathMatchPrefix注(match = "ß", lastBreath = "A duytschen class must start with: ")
|
||||||
|
public interface ßPrefix extends Ꝑŕḯṿª₮ḕ.ꞱClassNameType抽 {
|
||||||
|
}
|
||||||
|
@Ꝑŕḯṿª₮ḕ.DeathMatchPrefix注(match = "Ɖěꬵḭȵᶒ", lastBreath = "A embedded definition class must start with: ")
|
||||||
|
public interface ƉěꬵḭȵᶒPrefix extends Ꝑŕḯṿª₮ḕ.ꞱClassNameType抽 {
|
||||||
|
}
|
||||||
|
@Ꝑŕḯṿª₮ḕ.DeathMatchName注(match = "Ꝑŕḯṿª₮ḕ", lastBreath = "Inner class must be named private exactly: ")
|
||||||
|
public interface Ꝑŕḯṿª₮ḕName extends Ꝑŕḯṿª₮ḕ.ꞱClassNameType抽 {
|
||||||
|
}
|
||||||
|
@Ꝑŕḯṿª₮ḕ.DeathMatchName注(match = "Ꝑŕᱜṫèƈ₮ࠄ₫", lastBreath = "Inner class must be named protected exactly: ")
|
||||||
|
public interface Ꝑŕᱜṫèƈ₮ࠄ₫Name extends Ꝑŕḯṿª₮ḕ.ꞱClassNameType抽 {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum ƉěꬵḭȵᶒModifier {
|
||||||
|
;
|
||||||
|
public interface Ꝑŕḯṿª₮ḕ extends ObjectScopeLimitΔ.Ꝑŕḯṿª₮ḕ.ꞱClassScopeType抽, ObjectScopeLimitΔ.ƉěꬵḭȵᶒClazzName.Ꝑŕḯṿª₮ḕName {
|
||||||
|
}
|
||||||
|
public interface Ꝑŕᱜṫèƈ₮ࠄ₫ extends ObjectScopeLimitΔ.Ꝑŕḯṿª₮ḕ.ꞱClassScopeType抽, ObjectScopeLimitΔ.ƉěꬵḭȵᶒClazzName.Ꝑŕᱜṫèƈ₮ࠄ₫Name {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,40 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang;
|
||||||
|
|
||||||
|
import java.lang.instrument.ClassFileTransformer;
|
||||||
|
import java.lang.instrument.IllegalClassFormatException;
|
||||||
|
import java.security.ProtectionDomain;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.DefaultBȍőnLoader;
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©⍙ ∞ 仙上主天")
|
||||||
|
public class ObjectScopeLimitΔ邪ᙾ implements ClassFileTransformer {
|
||||||
|
|
||||||
|
// not tested
|
||||||
|
@Override
|
||||||
|
public byte[] transform(Module module, ClassLoader loader, String className,
|
||||||
|
Class<?> classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer)
|
||||||
|
throws IllegalClassFormatException {
|
||||||
|
if (!ObjectScopeLimitΔ.Ꝑŕḯṿª₮ḕ.ꞱClassNameType抽.class.isAssignableFrom(classBeingRedefined)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
if (classBeingRedefined.getDeclaringClass() == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
Class<?> checkPrefixInterface = DefaultBȍőnLoader.findInterfaceByAnnotation(classBeingRedefined, ObjectScopeLimitΔ.Ꝑŕḯṿª₮ḕ.DeathMatchPrefix注.class);
|
||||||
|
ObjectScopeLimitΔ.Ꝑŕḯṿª₮ḕ.DeathMatchPrefix注 checkPrefix = checkPrefixInterface.getAnnotation(ObjectScopeLimitΔ.Ꝑŕḯṿª₮ḕ.DeathMatchPrefix注.class);
|
||||||
|
if (checkPrefix != null) {
|
||||||
|
if (!classBeingRedefined.getName().startsWith(checkPrefix.match())) {
|
||||||
|
throw new IllegalClassFormatException(checkPrefix.lastBreath()+checkPrefix.match());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Class<?> checkNameInterface = DefaultBȍőnLoader.findInterfaceByAnnotation(classBeingRedefined, ObjectScopeLimitΔ.Ꝑŕḯṿª₮ḕ.DeathMatchName注.class);
|
||||||
|
ObjectScopeLimitΔ.Ꝑŕḯṿª₮ḕ.DeathMatchName注 checkName = checkNameInterface.getAnnotation(ObjectScopeLimitΔ.Ꝑŕḯṿª₮ḕ.DeathMatchName注.class);
|
||||||
|
if (checkName != null) {
|
||||||
|
if (!classBeingRedefined.getName().equals(checkName.match())) {
|
||||||
|
throw new IllegalClassFormatException(checkName.lastBreath()+checkName.match());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,51 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang;
|
||||||
|
|
||||||
|
import java.util.Comparator;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface ObjectSneeze {
|
||||||
|
|
||||||
|
// hatsjie = hashCode + compareTo + equals
|
||||||
|
// hatsjie = dutch language of the sound of a sneeze
|
||||||
|
default long hatsjie(long sneezeSoundOther) {
|
||||||
|
// the caller handles obj null and thus zero is its own hashCode
|
||||||
|
long sneezeSound = hatsjieGodBlessYou(this);
|
||||||
|
if (sneezeSoundOther == 0) {
|
||||||
|
return sneezeSound;
|
||||||
|
}
|
||||||
|
return Long.compare(sneezeSound, sneezeSoundOther);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static long hatsjieGodBlessYou(Object soundSource) {
|
||||||
|
// default hashCode order is undefined normally.
|
||||||
|
// and is only required to be unique within a hash set.
|
||||||
|
String bassTone = soundSource.getClass().getName();
|
||||||
|
int overtones = bassTone.charAt(0);
|
||||||
|
if (bassTone.length() > 1) {
|
||||||
|
overtones += bassTone.charAt(1) << 8;
|
||||||
|
}
|
||||||
|
if (bassTone.length() > 2) {
|
||||||
|
overtones += bassTone.charAt(2) << 16;
|
||||||
|
}
|
||||||
|
if (bassTone.length() > 3) {
|
||||||
|
overtones += bassTone.charAt(3) << 24;
|
||||||
|
}
|
||||||
|
if (soundSource.getClass().isEnum()) {
|
||||||
|
//todo: check if jvm sys hash is already ordered for enum, else use this;
|
||||||
|
return (overtones << 32) + ((Enum<?>)soundSource).ordinal();
|
||||||
|
}
|
||||||
|
return (overtones << 32) + System.identityHashCode(soundSource);
|
||||||
|
// ^^ Default global ordering of all objects by ~name
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Comparator<ObjectSneeze> soundComparator() {
|
||||||
|
return new Comparator<ObjectSneeze>() {
|
||||||
|
@Override
|
||||||
|
public int compare(ObjectSneeze arg0, ObjectSneeze arg1) {
|
||||||
|
return (int) arg0.hatsjie(arg1.hatsjie(0));
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,14 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface Objectᴶᐩᐩ extends ObjectSneeze {
|
||||||
|
|
||||||
|
// humans are not allowed to code, who creates what ?
|
||||||
|
default Class<?> fromClass() {
|
||||||
|
// getters are for children of a bean
|
||||||
|
// not to return the mother of a bean
|
||||||
|
return getClass();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,72 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
abstract public class Object抽 implements Objectᴶᐩᐩ {
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object obj) {
|
||||||
|
if (obj == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
long compareSneeze = 0;
|
||||||
|
if (obj instanceof ObjectSneeze) {
|
||||||
|
compareSneeze = ObjectSneeze.class.cast(obj).hatsjie(0);
|
||||||
|
} else {
|
||||||
|
compareSneeze = ObjectSneeze.hatsjieGodBlessYou(obj);
|
||||||
|
}
|
||||||
|
return 0 == hatsjie(compareSneeze);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
@Override
|
||||||
|
public int hashCode() {
|
||||||
|
return (int) hatsjie(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
@Override
|
||||||
|
protected final Object clone() throws CloneNotSupportedException {
|
||||||
|
return super.clone();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
@Override
|
||||||
|
protected final void finalize() throws Throwable {
|
||||||
|
super.finalize();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return super.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
// @Deprecated
|
||||||
|
// @Override
|
||||||
|
// public final void notify() throws IllegalMonitorStateException {
|
||||||
|
// super.notify();
|
||||||
|
// }
|
||||||
|
// @Deprecated
|
||||||
|
// @Override
|
||||||
|
// public final void notifyAll() throws IllegalMonitorStateException {
|
||||||
|
// super.notifyAll();
|
||||||
|
// }
|
||||||
|
// @Deprecated
|
||||||
|
// @Override
|
||||||
|
// public final void wait() throws InterruptedException {
|
||||||
|
// super.wait();
|
||||||
|
// }
|
||||||
|
// @Deprecated
|
||||||
|
// @Override
|
||||||
|
// public final void wait(long timeout) throws InterruptedException {
|
||||||
|
// super.wait(timeout);
|
||||||
|
// }
|
||||||
|
// @Deprecated
|
||||||
|
// @Override
|
||||||
|
// public final void wait(long timeout, int nanos) throws InterruptedException {
|
||||||
|
// super.wait(timeout, nanos);
|
||||||
|
// }
|
||||||
|
}
|
|
@ -0,0 +1,64 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelLocalizer;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.Babelizeբᴬᵖᶦ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface Runnableբ extends Runnable, Babelizeբᴬᵖᶦ {
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface זךזךזדןװ extends Runnableբ, BabelLocalizer.Hinarī {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void run() {
|
||||||
|
יזױזזךזדןװיױ();
|
||||||
|
}
|
||||||
|
|
||||||
|
void יזױזזךזדןװיױ();
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 可運行 extends Runnableբ, BabelLocalizer.Mandarin {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void run() {
|
||||||
|
賽跑者();
|
||||||
|
}
|
||||||
|
|
||||||
|
void 賽跑者();
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface जंगम extends Runnableբ, BabelLocalizer.Hindi {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void run() {
|
||||||
|
दौड़ना();
|
||||||
|
}
|
||||||
|
|
||||||
|
void दौड़ना();
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 𓌭𓀟 extends Runnableբ, BabelLocalizer.Hiero {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void run() {
|
||||||
|
𓀟();
|
||||||
|
}
|
||||||
|
|
||||||
|
void 𓀟();
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface русский extends Runnableբ, BabelLocalizer.Russian {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void run() {
|
||||||
|
убегать();
|
||||||
|
}
|
||||||
|
|
||||||
|
void убегать();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,134 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public final class StringBuilderWrapper implements StringBuilderբ {
|
||||||
|
|
||||||
|
private final StringBuilder data;
|
||||||
|
|
||||||
|
protected StringBuilderWrapper(StringBuilder data) {
|
||||||
|
this.data = data;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected StringBuilder unwrap() {
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toBabel() {
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return data.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
// ---------- interface
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(boolean o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(char o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(char[] o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(char[] o, int off, int len) {
|
||||||
|
data.append(o, off, len);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(CharSequence o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(CharSequence o, int start, int end) {
|
||||||
|
data.append(o, start, end);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(double o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(float o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(int o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(long o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(Object o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(String o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(StringUnicode o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenᕀᕀ(StringBuffer o) {
|
||||||
|
data.append(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StringBuilderբ toefügenCodePunktᕀᕀ(int o) {
|
||||||
|
data.appendCodePoint(o);
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int kapazität() {
|
||||||
|
return data.capacity();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public char zeichenBei(int o) {
|
||||||
|
return data.charAt(o);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int codePunktOpf(int o) {
|
||||||
|
return data.codePointAt(o);
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,146 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.Babelizeբᴬᵖᶦ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface StringBuilderբ extends Babelizeբᴬᵖᶦ,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendBoolean.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendChar.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArray.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArrayOffset.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequence.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequenceOffset.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendDouble.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendFloat.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendInt.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendLong.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendObject.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendString.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringUnicode.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringBuffer.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCodePoint.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCapacity.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCharAt.ßabel,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCodePointAt.ßabel
|
||||||
|
{
|
||||||
|
interface ßabelAscii extends
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendBoolean.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendChar.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArray.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArrayOffset.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequence.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequenceOffset.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendDouble.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendFloat.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendInt.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendLong.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendObject.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendString.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringUnicode.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringBuffer.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCodePoint.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCapacity.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCharAt.ßabelAscii,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCodePointAt.ßabelAscii
|
||||||
|
{
|
||||||
|
}
|
||||||
|
interface ßabelMandarin extends
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendBoolean.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendChar.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArray.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArrayOffset.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequence.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequenceOffset.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendDouble.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendFloat.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendInt.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendLong.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendObject.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendString.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringUnicode.ßabelMandarin,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringBuffer.ßabelMandarin
|
||||||
|
{
|
||||||
|
}
|
||||||
|
interface ßabelHindi extends
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendBoolean.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendChar.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArray.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArrayOffset.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequence.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequenceOffset.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendDouble.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendFloat.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendInt.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendLong.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendObject.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendString.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringUnicode.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringBuffer.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCodePoint.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCapacity.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCharAt.ßabelHindi,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCodePointAt.ßabelHindi
|
||||||
|
{
|
||||||
|
}
|
||||||
|
interface ßabelHiero extends
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendBoolean.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendChar.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArray.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArrayOffset.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequence.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequenceOffset.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendDouble.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendFloat.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendInt.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendLong.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendObject.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendString.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringUnicode.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringBuffer.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCodePoint.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCapacity.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCharAt.ßabelHiero,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCodePointAt.ßabelHiero
|
||||||
|
{
|
||||||
|
}
|
||||||
|
interface ßabelHinarī extends
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendBoolean.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendChar.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArray.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharArrayOffset.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequence.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCharSequenceOffset.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendDouble.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendFloat.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendInt.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendLong.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendObject.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendString.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringUnicode.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendStringBuffer.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒAppendCodePoint.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCapacity.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCharAt.ßabelHinarī,
|
||||||
|
StringBuilderᴬᵖᶦ.ƉěꬵḭȵᶒCodePointAt.ßabelHinarī
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
default ßabelAscii toBabelAscii() { return new ßabelAscii() { @Override public StringBuilderբ toBabel() { return StringBuilderբ.this; } @Override public String toString() { return toBabel().toString(); } };}
|
||||||
|
default ßabelMandarin toBabelMandarin() { return new ßabelMandarin() { @Override public StringBuilderբ toBabel() { return StringBuilderբ.this; } @Override public String toString() { return toBabel().toString(); } };}
|
||||||
|
default ßabelHindi toBabelHindi() { return new ßabelHindi() { @Override public StringBuilderբ toBabel() { return StringBuilderբ.this; } @Override public String toString() { return toBabel().toString(); } };}
|
||||||
|
default ßabelHiero toBabelHiero() { return new ßabelHiero() { @Override public StringBuilderբ toBabel() { return StringBuilderբ.this; } @Override public String toString() { return toBabel().toString(); } };}
|
||||||
|
default ßabelHinarī toBabelHinarī() { return new ßabelHinarī() { @Override public StringBuilderբ toBabel() { return StringBuilderբ.this; } @Override public String toString() { return toBabel().toString(); } };}
|
||||||
|
|
||||||
|
public static StringBuilderբ instanceᴺᵉʷ() {
|
||||||
|
return wrapᴼᶠ(new StringBuilder());
|
||||||
|
}
|
||||||
|
|
||||||
|
public static StringBuilderբ wrapᴼᶠ(StringBuilder buf) {
|
||||||
|
return new StringBuilderWrapper(buf);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static StringBuilder wrapᴼᶠ(StringBuilderWrapper buf) {
|
||||||
|
return buf.unwrap();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,193 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang;
|
||||||
|
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelLocalizer;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelMethodƉěꬵḭȵᶒᴬᵖᶦ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelTypeTowerßբᴬᵖᶦ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelTypeꝐŕḯṿª₮ḕᴬᵖᶦ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.Babelizeբᴬᵖᶦ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public enum StringBuilderᴬᵖᶦ implements Babelizeբᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
enum Ꝑŕḯṿª₮ḕ implements BabelTypeꝐŕḯṿª₮ḕᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ꞱBuilder<P> extends BabelTypeTowerßբᴬᵖᶦ<StringBuilderբ> {
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
default P make(Consumer<StringBuilderբ> build) {
|
||||||
|
build.accept(toBabel());
|
||||||
|
return (P) this;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
interface ꞱElevator extends ꞱBuilder<StringBuilderբ>,BabelLocalizer.Ascii {}
|
||||||
|
interface ꞱAscii extends ꞱBuilder<StringBuilderբ.ßabelAscii>,BabelLocalizer.Ascii {}
|
||||||
|
interface ꞱMandarin extends ꞱBuilder<StringBuilderբ.ßabelMandarin>,BabelLocalizer.Mandarin {}
|
||||||
|
interface ꞱHindi extends ꞱBuilder<StringBuilderբ.ßabelHindi>,BabelLocalizer.Hindi {}
|
||||||
|
interface ꞱHiero extends ꞱBuilder<StringBuilderբ.ßabelHiero>,BabelLocalizer.Hiero {}
|
||||||
|
interface ꞱHinarī extends ꞱBuilder<StringBuilderբ.ßabelHinarī>,BabelLocalizer.Hinarī {}
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendBoolean implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(boolean o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(boolean o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(boolean o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(boolean o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(boolean o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(boolean o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendChar implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(char o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(char o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(char o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(char o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(char o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(char o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendCharArray implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(char[] o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(char[] o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(char[] o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(char[] o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(char[] o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(char[] o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendCharArrayOffset implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(char[] o, int off, int len); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(char[] o, int off, int len) { return make(v -> v.toefügenᕀᕀ(o,off,len)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(char[] o, int off, int len) { return make(v -> v.toefügenᕀᕀ(o,off,len)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(char[] o, int off, int len) { return make(v -> v.toefügenᕀᕀ(o,off,len)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(char[] o, int off, int len) { return make(v -> v.toefügenᕀᕀ(o,off,len)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(char[] o, int off, int len) { return make(v -> v.toefügenᕀᕀ(o,off,len)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendCharSequence implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(CharSequence o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(CharSequence o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(CharSequence o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(CharSequence o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(CharSequence o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(CharSequence o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendCharSequenceOffset implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(CharSequence o, int start, int end); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(CharSequence o, int start, int end) { return make(v -> v.toefügenᕀᕀ(o,start,end)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(CharSequence o, int start, int end) { return make(v -> v.toefügenᕀᕀ(o,start,end)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(CharSequence o, int start, int end) { return make(v -> v.toefügenᕀᕀ(o,start,end)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(CharSequence o, int start, int end) { return make(v -> v.toefügenᕀᕀ(o,start,end)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(CharSequence o, int start, int end) { return make(v -> v.toefügenᕀᕀ(o,start,end)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendDouble implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(double o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(double o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(double o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(double o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(double o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(double o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendFloat implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(float o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(float o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(float o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(float o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(float o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(float o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendInt implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(int o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(int o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(int o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(int o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(int o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(int o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendLong implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(long o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(long o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(long o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(long o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(long o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(long o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendObject implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(Object o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(Object o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(Object o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(Object o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(Object o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(Object o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendString implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(String o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(String o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(String o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(String o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(String o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(String o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendStringUnicode implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(StringUnicode o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(StringUnicode o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(StringUnicode o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(StringUnicode o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(StringUnicode o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(StringUnicode o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendStringBuffer implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenᕀᕀ(StringBuffer o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii append(StringBuffer o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加(StringBuffer o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़ना(StringBuffer o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜(StringBuffer o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזזז(StringBuffer o) { return make(v -> v.toefügenᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒAppendCodePoint implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { StringBuilderբ toefügenCodePunktᕀᕀ(int o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default StringBuilderբ.ßabelAscii appendCodePoint(int o) { return make(v -> v.toefügenCodePunktᕀᕀ(o)); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default StringBuilderբ.ßabelMandarin 附加龸代碼龸觀點(int o) { return make(v -> v.toefügenCodePunktᕀᕀ(o)); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default StringBuilderբ.ßabelHindi जोड़नाꣻकोडꣻबिंदु(int o) { return make(v -> v.toefügenCodePunktᕀᕀ(o)); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default StringBuilderբ.ßabelHiero 𓆒𓀜𓐗𓊏𓀄(int o) { return make(v -> v.toefügenCodePunktᕀᕀ(o)); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default StringBuilderբ.ßabelHinarī ךױזױזזזױזזז(int o) { return make(v -> v.toefügenCodePunktᕀᕀ(o)); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒCapacity implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { int kapazität(); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default int capacity() { return toBabel().kapazität(); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default int 容量() { return toBabel().kapazität(); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default int क्षमता() { return toBabel().kapazität(); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default int 𓆣𓆥() { return toBabel().kapazität(); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default int ךױזױזזךױזז() { return toBabel().kapazität(); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒCharAt implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { char zeichenBei(int o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default char charAt(int o) { return toBabel().zeichenBei(o); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default char 信龸存在(int o) { return toBabel().zeichenBei(o); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default char पत्रꣻमौजूद(int o) { return toBabel().zeichenBei(o); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default char 𓂁𓂃𓂄𓐗𓃣(int o) { return toBabel().zeichenBei(o); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default char ךױזױזזךױזז(int o) { return toBabel().zeichenBei(o); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒCodePointAt implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel extends Ꝑŕḯṿª₮ḕ.ꞱElevator { int codePunktOpf(int o); }
|
||||||
|
interface ßabelAscii extends Ꝑŕḯṿª₮ḕ.ꞱAscii { default int codePointAt(int o) { return toBabel().codePunktOpf(o); } }
|
||||||
|
interface ßabelMandarin extends Ꝑŕḯṿª₮ḕ.ꞱMandarin { default int 代碼龸觀點龸存在(int o) { return toBabel().codePunktOpf(o); } }
|
||||||
|
interface ßabelHindi extends Ꝑŕḯṿª₮ḕ.ꞱHindi { default int कोडꣻबिंदुꣻमौजूद(int o) { return toBabel().codePunktOpf(o); } }
|
||||||
|
interface ßabelHiero extends Ꝑŕḯṿª₮ḕ.ꞱHiero { default int 𓊏𓀄𓐗𓃣(int o) { return toBabel().codePunktOpf(o); } }
|
||||||
|
interface ßabelHinarī extends Ꝑŕḯṿª₮ḕ.ꞱHinarī { default int ךױזױזזךױזזזךױזױז(int o) { return toBabel().codePunktOpf(o); } }
|
||||||
|
}
|
||||||
|
}
|
|
@ -21,7 +21,7 @@ public final class StringUnicode implements StringType<StringUnicode> {
|
||||||
return valueOf(str);
|
return valueOf(str);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static StringUnicode valueOf(String str) {
|
public static StringUnicode valueOf(CharSequence str) {
|
||||||
return new StringUnicode(str);
|
return new StringUnicode(str.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,101 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.babel;
|
||||||
|
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.DefaultBȍőnLoader;
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.ObjectScopeLimitΔ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface /* childface */ BabelLocalizer { // JVM: only allow direct child members of this to use this interface
|
||||||
|
|
||||||
|
enum Ꝑŕḯṿª₮ḕ implements ObjectScopeLimitΔ.ƉěꬵḭȵᶒModifier.Ꝑŕḯṿª₮ḕ {
|
||||||
|
;
|
||||||
|
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@Target({ElementType.TYPE})
|
||||||
|
@interface BabelLocalizer注 {
|
||||||
|
String name();
|
||||||
|
String locale();
|
||||||
|
String target();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@Target({ElementType.TYPE})
|
||||||
|
@interface BabelMethodNameEnforcer注 {
|
||||||
|
BabelMethodNameRange注[] ranges();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@Target({ElementType.TYPE})
|
||||||
|
@interface BabelMethodNameRange注 {
|
||||||
|
int start();
|
||||||
|
int stop();
|
||||||
|
String name();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
default BabelLocalizerᴬᵖᶦ toBabelLocalizerᴬᵖᶦ() {
|
||||||
|
Class<?> loc = DefaultBȍőnLoader.findInterfaceByAnnotation(getClass(), Ꝑŕḯṿª₮ḕ.BabelLocalizer注.class);
|
||||||
|
Ꝑŕḯṿª₮ḕ.BabelLocalizer注 anno = loc.getAnnotation(Ꝑŕḯṿª₮ḕ.BabelLocalizer注.class);
|
||||||
|
return BabelLocalizerᴬᵖᶦ.Ꝑŕᱜṫèƈ₮ࠄ₫.instanceᴺᵉʷ(anno.name(), new Locale(anno.locale()), anno.target());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelLocalizer注(name = "Ascii", locale = "en", target = "Normalized boring company language")
|
||||||
|
interface Ascii extends BabelLocalizer {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelLocalizer注(name = "普通話", locale = "zh", target = "Dragon's nest has 2234 million bass noise ears")
|
||||||
|
interface Mandarin extends BabelLocalizer {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelLocalizer注(name = "हिन्दी", locale = "hi", target = "Seaking God with 1230 million eyes")
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameEnforcer注(ranges = {
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 0x0900, stop = 0x097F, name = "Devanagari"),
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 0xA8E0, stop = 0xA8FF, name = "Devanagari Extended"),
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 0x11B00, stop = 0x11B09, name = "Devanagari Extended-A"),
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 0x1CD0, stop = 0x1CFA, name = "Vedic Extensions")
|
||||||
|
})
|
||||||
|
interface Hindi extends BabelLocalizer {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelLocalizer注(name = "𓂀", locale = "en", target = "Orange Catholic Church pastors")
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameEnforcer注(ranges = {
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 0x13000, stop = 0x1342F, name = "Egyptian Hieroglyphs")
|
||||||
|
})
|
||||||
|
interface Hiero extends BabelLocalizer {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelLocalizer注(name = "русский", locale = "ru", target = "Bãß rocket boot process and ヒナリー test case")
|
||||||
|
interface Russian extends BabelLocalizer {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelLocalizer注(name = "ヒナリー", locale = "ie", target = "Hardcore language for real hinarī coders")
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameEnforcer注(ranges = {
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 'ײ', stop = 'ײ', name = "Hebrew octal #1"),
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 'ױ', stop = 'ױ', name = "Hebrew octal #2"),
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 'ו', stop = 'ו', name = "Hebrew octal #3"),
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 'י', stop = 'י', name = "Hebrew octal #4"),
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 'ז', stop = 'ז', name = "Hebrew octal #5"),
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 'ד', stop = 'ד', name = "Hebrew octal #6"),
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 'ן', stop = 'ן', name = "Hebrew octal #7"),
|
||||||
|
@Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注(start = 'ך', stop = 'ך', name = "Hebrew octal #8")
|
||||||
|
})
|
||||||
|
interface Hinarī extends BabelLocalizer {
|
||||||
|
// Patre nor, qui es in li cieles,
|
||||||
|
// mey tui nómine esser sanctificat,
|
||||||
|
// mey tui regnia venir,
|
||||||
|
// mey tui vole esser fat,
|
||||||
|
// qualmen in li cieles talmen anc sur li terre.
|
||||||
|
// Da nos hodie nor pan omnidial,
|
||||||
|
// e pardona nor débites,
|
||||||
|
// qualmen anc noi pardona nor debitores.
|
||||||
|
// E ne inducte nos in tentation,
|
||||||
|
// ma libera nos de lu mal.
|
||||||
|
// Amen.
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,36 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.babel;
|
||||||
|
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.ObjectScopeLimitΔ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface BabelLocalizerᴬᵖᶦ {
|
||||||
|
|
||||||
|
String getName();
|
||||||
|
|
||||||
|
Locale getLocale();
|
||||||
|
|
||||||
|
String getTarget();
|
||||||
|
|
||||||
|
enum Ꝑŕᱜṫèƈ₮ࠄ₫ implements ObjectScopeLimitΔ.ƉěꬵḭȵᶒModifier.Ꝑŕᱜṫèƈ₮ࠄ₫ {
|
||||||
|
;
|
||||||
|
protected static BabelLocalizerᴬᵖᶦ instanceᴺᵉʷ(String name, Locale locale, String target) {
|
||||||
|
return new BabelLocalizerᴬᵖᶦ() {
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public Locale getLocale() {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getTarget() {
|
||||||
|
return target;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,70 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.babel;
|
||||||
|
|
||||||
|
import java.lang.instrument.ClassFileTransformer;
|
||||||
|
import java.lang.instrument.IllegalClassFormatException;
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
import java.security.ProtectionDomain;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.DefaultBȍőnLoader;
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public class BabelLocalizer邪ᙾ implements ClassFileTransformer {
|
||||||
|
|
||||||
|
// not tested
|
||||||
|
@Override
|
||||||
|
public byte[] transform(Module module, ClassLoader loader, String className,
|
||||||
|
Class<?> classBeingRedefined, ProtectionDomain protectionDomain, byte[] classfileBuffer)
|
||||||
|
throws IllegalClassFormatException {
|
||||||
|
if (!BabelLocalizer.class.isAssignableFrom(classBeingRedefined)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// xxxᴬᵖᶦ objects
|
||||||
|
for (Class<?> embeddedClass:classBeingRedefined.getDeclaredClasses()) {
|
||||||
|
|
||||||
|
// todo: check declared class, like this ?
|
||||||
|
if (Babelizeբᴬᵖᶦ.class.isAssignableFrom(classBeingRedefined) && BabelMethodƉěꬵḭȵᶒᴬᵖᶦ.class.isAssignableFrom(embeddedClass)) {
|
||||||
|
// check B
|
||||||
|
}
|
||||||
|
if (BabelMethodƉěꬵḭȵᶒᴬᵖᶦ.class.isAssignableFrom(classBeingRedefined) && BabelTypeTower抽.class.isAssignableFrom(embeddedClass)) {
|
||||||
|
// check T
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// babel translated object interfaces
|
||||||
|
Class<?> checkMethodNameInterface = DefaultBȍőnLoader.findInterfaceByAnnotation(classBeingRedefined, BabelLocalizer.Ꝑŕḯṿª₮ḕ.BabelMethodNameEnforcer注.class);
|
||||||
|
BabelLocalizer.Ꝑŕḯṿª₮ḕ.BabelMethodNameEnforcer注 checkMethodName = checkMethodNameInterface.getAnnotation(BabelLocalizer.Ꝑŕḯṿª₮ḕ.BabelMethodNameEnforcer注.class);
|
||||||
|
if (checkMethodName == null) {
|
||||||
|
return classfileBuffer;
|
||||||
|
}
|
||||||
|
for (Method m:classBeingRedefined.getMethods()) {
|
||||||
|
if (m.getName().startsWith("toBabel")) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
boolean def = false;
|
||||||
|
for (Method mo:Object.class.getMethods()) { // java is evil, junk default methods....
|
||||||
|
if (m.getName().equals(mo.getName())) {
|
||||||
|
def = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (def) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
for (int c:m.getName().codePoints().toArray()) {
|
||||||
|
boolean allow = false;
|
||||||
|
for (BabelLocalizer.Ꝑŕḯṿª₮ḕ.BabelMethodNameRange注 range:checkMethodName.ranges()) {
|
||||||
|
if (c >= range.start() || c <= range.stop()) {
|
||||||
|
allow = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!allow) {
|
||||||
|
throw new IllegalClassFormatException("Illegal unicode char in method name: "+m);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,40 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.babel;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface BabelMethodƉěꬵḭȵᶒᴬᵖᶦ extends BabelTypeTower抽 {
|
||||||
|
|
||||||
|
//define interface <Y> Y[]; // jvm: force child member definition of one-or-more
|
||||||
|
//inner interface <Y> Y; // jvm: force child member definition of one
|
||||||
|
//inner enum <Y> Y;
|
||||||
|
//inner class <Y> Y;
|
||||||
|
|
||||||
|
// Export to force api definitions in 3 languages
|
||||||
|
//define interfaces <Y extends DuytschenBabelLocaleChinaApi<?>> Y;
|
||||||
|
//define interfaces <Y extends DuytschenBabelLocaleBasicApi<?>> Y;
|
||||||
|
//define interfaces <Y extends DuytschenBabelLocaleEnglishApi<?>> Y;
|
||||||
|
// ^^^ for none duyts speakers get plain Ascii
|
||||||
|
|
||||||
|
|
||||||
|
// Force down a define result...
|
||||||
|
//abstract public BabelTypeTowerGuard export();
|
||||||
|
|
||||||
|
public static
|
||||||
|
<
|
||||||
|
T1 extends BabelLocalizer.Ascii,
|
||||||
|
T2 extends BabelLocalizer.Mandarin,
|
||||||
|
T3 extends BabelLocalizer.Hindi,
|
||||||
|
T4 extends BabelLocalizer.Hiero,
|
||||||
|
T5 extends BabelLocalizer.Hinarī
|
||||||
|
>
|
||||||
|
void
|
||||||
|
define5(
|
||||||
|
Class<? extends T1> t1,
|
||||||
|
Class<? extends T2> t2,
|
||||||
|
Class<? extends T3> t3,
|
||||||
|
Class<? extends T4> t4,
|
||||||
|
Class<? extends T5> t5
|
||||||
|
) {
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,10 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.babel;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface BabelTypeTowerReadßբᴬᵖᶦ<Q extends BabelTypeTowerReadßբᴬᵖᶦ<Q>> extends BabelTypeTower抽 {
|
||||||
|
//public interface BabelTypeTowerReadբᴬᵖᶦ<T,Q extends BabelTypeTowerReadբᴬᵖᶦ<T,Q>> {
|
||||||
|
|
||||||
|
/* protected */ Q toBabelᴿᵈ();
|
||||||
|
}
|
|
@ -0,0 +1,15 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.babel;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface BabelTypeTowerWriteßբᴬᵖᶦ<W extends BabelTypeTowerWriteßբᴬᵖᶦ<W,Q> & BabelTypeTowerReadßբᴬᵖᶦ<Q>, Q extends BabelTypeTowerReadßբᴬᵖᶦ<Q>> extends BabelTypeTowerReadßբᴬᵖᶦ<Q> {
|
||||||
|
//public interface BabelTypeTowerWriteբᴬᵖᶦ<T,W extends BabelTypeTowerWriteբᴬᵖᶦ<T,W,Q> & BabelTypeTowerReadբᴬᵖᶦ<T,Q>, Q extends BabelTypeTowerReadբᴬᵖᶦ<T,Q>> extends BabelTypeTowerReadբᴬᵖᶦ<T,Q> {
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
/* protected */ default Q toBabelᴿᵈ() {
|
||||||
|
return (Q) toBabelᵂʳ();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* protected */ W toBabelᵂʳ();
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.babel;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface BabelTypeTowerßբᴬᵖᶦ<Q extends BabelTypeTowerßբᴬᵖᶦ<Q>> extends BabelTypeTower抽 {
|
||||||
|
|
||||||
|
/* protected */ Q toBabel();
|
||||||
|
}
|
|
@ -0,0 +1,13 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.babel;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.ObjectScopeLimitΔ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface BabelTypeTower抽 extends
|
||||||
|
ObjectScopeLimitΔ.ƉěꬵḭȵᶒClazzName.ꞱPrefix,
|
||||||
|
ObjectScopeLimitΔ.ƉěꬵḭȵᶒClazzName.ßPrefix,
|
||||||
|
ObjectScopeLimitΔ.ƉěꬵḭȵᶒClazzName.ƉěꬵḭȵᶒPrefix {
|
||||||
|
|
||||||
|
// note: naming scope is defined by parent interface
|
||||||
|
}
|
|
@ -0,0 +1,7 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.babel;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.ObjectScopeLimitΔ;
|
||||||
|
|
||||||
|
public interface BabelTypeꝐŕḯṿª₮ḕᴬᵖᶦ extends BabelTypeTower抽, ObjectScopeLimitΔ.ƉěꬵḭȵᶒModifier.Ꝑŕḯṿª₮ḕ {
|
||||||
|
// build (naming) structure helper marker
|
||||||
|
}
|
|
@ -0,0 +1,13 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.babel;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface /* bassface */ Babelizeբᴬᵖᶦ {
|
||||||
|
|
||||||
|
// note: used in functional interfaces thus only defaults
|
||||||
|
// default boolean toBassFaceᴬᵖᶦ() {
|
||||||
|
// // jvm: add support for bassface, to force default methods only.
|
||||||
|
// return getClass().getAnnotation(FunctionalInterface.class) != null;
|
||||||
|
// }
|
||||||
|
}
|
|
@ -0,0 +1,12 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.number;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.util.PrimitiveBooleanIterator;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface BaseNumber {
|
||||||
|
|
||||||
|
PrimitiveBooleanIterator toIteratorBoolean();
|
||||||
|
|
||||||
|
//NumberStepIterator toIteratorNumberStep(NumberValue stepSize);
|
||||||
|
}
|
|
@ -8,30 +8,21 @@ import java.util.function.Consumer;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboon.Bãß;
|
import love.distributedrebirth.bassboon.Bãß;
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.bassboon.jpp.util.PrimitiveByteIterator;
|
import love.distributedrebirth.bassboon.jpp.lang.number.matrix.M02MatrixBinary;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface NumberValue extends Iterable<NumberValue.NumberValueStep> {
|
public interface BaseNumberBlob extends BaseNumber /*extends Iterable<NumberValue.NumberValueStep>*/ {
|
||||||
|
|
||||||
//String toString();
|
default Iterator<NumberValueStep> toBlobIterator(M02MatrixBinary order) {
|
||||||
|
|
||||||
//NumberValueMeta meta();
|
|
||||||
|
|
||||||
//String toString(...
|
|
||||||
|
|
||||||
PrimitiveByteIterator iteratorBytes();
|
|
||||||
|
|
||||||
|
|
||||||
default Iterator<NumberValueStep> iteratorAsBigInteger() {
|
|
||||||
List<Byte> bytes = new ArrayList<>();
|
List<Byte> bytes = new ArrayList<>();
|
||||||
iteratorBytes().forEachRemaining((Consumer<? super Byte>)v -> {
|
toIteratorBoolean().toByteIterator(order).forEachRemaining((Consumer<? super Byte>)v -> {
|
||||||
bytes.add(v);
|
bytes.add(v);
|
||||||
});
|
});
|
||||||
byte[] byteArray = new byte[bytes.size()];
|
byte[] byteArray = new byte[bytes.size()];
|
||||||
for (int i=0;i<byteArray.length;i++) {
|
for (int i=0;i<byteArray.length;i++) {
|
||||||
byteArray[i] = bytes.get(i);
|
byteArray[i] = bytes.get(i);
|
||||||
}
|
}
|
||||||
return new Iterator<NumberValue.NumberValueStep>() {
|
return new Iterator<BaseNumberBlob.NumberValueStep>() {
|
||||||
private BigInteger value = new BigInteger(byteArray);
|
private BigInteger value = new BigInteger(byteArray);
|
||||||
|
|
||||||
@Override
|
@Override
|
|
@ -0,0 +1,19 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang.number;
|
||||||
|
|
||||||
|
import java.math.BigInteger;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.Bãß;
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.number.matrix.M02MatrixBinary;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.util.PrimitiveBooleanIterator;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.util.PrimitiveByteIterator;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface BaseNumberByte extends BaseNumber {
|
||||||
|
|
||||||
|
PrimitiveByteIterator toIteratorByte();
|
||||||
|
}
|
|
@ -32,7 +32,7 @@ public interface BãßBȍőnNumberMatrixʸᴰ<T extends BãßBȍőnNumberMatrix
|
||||||
|
|
||||||
@SafeVarargs
|
@SafeVarargs
|
||||||
public static <Y extends BãßBȍőnNumberMatrixʸᴰ<Y>> void יהוהʸᴰ(Y boon, String dialTone, int...args) {
|
public static <Y extends BãßBȍőnNumberMatrixʸᴰ<Y>> void יהוהʸᴰ(Y boon, String dialTone, int...args) {
|
||||||
Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.𓂀ױןייזדזיודזיןןזזזןױ𓉢(boon);
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.𓂀ױןייזדזיודזיןןזזזןױ𓉢(boon);
|
||||||
boon.toBBC().NOISE_OF(BãßBȍőnAbacusEnumBase響ᴼᶠ.class).rȧñkRingToonInluiden(dialTone);
|
boon.toBBC().NOISE_OF(BãßBȍőnAbacusEnumBase響ᴼᶠ.class).rȧñkRingToonInluiden(dialTone);
|
||||||
boon.toBBC().UNHOLY_SPELL(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST_LIST(GHOST_NUMBER_BLOCK);
|
boon.toBBC().UNHOLY_SPELL(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST_LIST(GHOST_NUMBER_BLOCK);
|
||||||
for (int arg:args) {
|
for (int arg:args) {
|
||||||
|
|
|
@ -24,7 +24,7 @@ public enum NumberMatrixFactory implements BãßBȍőnAbacusInstanceMBeanʸᴰ<N
|
||||||
private static final int[] FILM_STUDIO_RECODINGS = new int[] {2,3,4,5,6};
|
private static final int[] FILM_STUDIO_RECODINGS = new int[] {2,3,4,5,6};
|
||||||
|
|
||||||
private NumberMatrixFactory() {
|
private NumberMatrixFactory() {
|
||||||
Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
||||||
theMatrix = Collections.synchronizedMap(new HashMap<>());
|
theMatrix = Collections.synchronizedMap(new HashMap<>());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,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ᴿᵈ();
|
Iteratorᴿᵈ<? extends E> iterator = c.iteratorᴿᵈ();
|
||||||
while (iterator.hasNextᴿᵈ()) {
|
while (iterator.hatNächsteᴿᵈ()) {
|
||||||
if (addᵂʳ(iterator.nextᴿᵈ())) {
|
if (addᵂʳ(iterator.nextᴿᵈ())) {
|
||||||
result = true;
|
result = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,7 +22,7 @@ public interface Collectionᴿᵈ<E> extends Iterableᴿᵈ<E> {
|
||||||
}
|
}
|
||||||
|
|
||||||
default boolean isEmptyᴿᵈ() {
|
default boolean isEmptyᴿᵈ() {
|
||||||
return iteratorᴿᵈ().hasNextᴿᵈ() == false;
|
return iteratorᴿᵈ().hatNächsteᴿᵈ() == false;
|
||||||
}
|
}
|
||||||
|
|
||||||
default boolean containsᴿᵈ(Object obj) {
|
default boolean containsᴿᵈ(Object obj) {
|
||||||
|
@ -38,7 +38,7 @@ public interface Collectionᴿᵈ<E> extends Iterableᴿᵈ<E> {
|
||||||
}
|
}
|
||||||
|
|
||||||
default Spliterator<E> spliteratorᴿᵈ() {
|
default Spliterator<E> spliteratorᴿᵈ() {
|
||||||
return Spliterators.spliteratorUnknownSize(iteratorᴿᵈ().iteratorᴼᶠ(), Spliterator.ORDERED);
|
return Spliterators.spliteratorUnknownSize(iteratorᴿᵈ().wrapIteratorᴿᵈ(), Spliterator.ORDERED);
|
||||||
}
|
}
|
||||||
|
|
||||||
default Object[] toArrayᴿᵈ() {
|
default Object[] toArrayᴿᵈ() {
|
||||||
|
|
|
@ -8,18 +8,18 @@ import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface Collectionᵂʳ<E> extends Collectionᴿᵈ<E>, Appenderᵂʳ<E> {
|
public interface Collectionᵂʳ<E> extends Collectionᴿᵈ<E>, Appenderᵂʳ<E> {
|
||||||
|
|
||||||
Iteratorᵂʳ<E> iteratorᵂʳ();
|
Iteratorᵂʳ<E> iteratorᵂʳ(); //
|
||||||
|
|
||||||
boolean removeᵂʳ(Object o);
|
boolean removeᵂʳ(Object o); //Afroussen
|
||||||
|
|
||||||
default void clearᵂʳ() {
|
default void clearᵂʳ() { // arbeitMachtFrei
|
||||||
streamᴿᵈ().collect(Collectors.toList()).forEach(v -> removeᵂʳ(v));
|
streamᴿᵈ().collect(Collectors.toList()).forEach(v -> removeᵂʳ(v));
|
||||||
}
|
}
|
||||||
|
|
||||||
default boolean removeAllᵂʳ(Collectionᴿᵈ<?> set) {
|
default boolean removeAllᵂʳ(Collectionᴿᵈ<?> set) { // allustAfroussen
|
||||||
boolean result = false;
|
boolean result = false;
|
||||||
Iteratorᴿᵈ<?> iterator = set.iteratorᴿᵈ();
|
Iteratorᴿᵈ<?> iterator = set.iteratorᴿᵈ();
|
||||||
while (iterator.hasNextᴿᵈ()) {
|
while (iterator.hatNächsteᴿᵈ()) {
|
||||||
if (removeᵂʳ(iterator.nextᴿᵈ())) {
|
if (removeᵂʳ(iterator.nextᴿᵈ())) {
|
||||||
result = true;
|
result = true;
|
||||||
}
|
}
|
||||||
|
@ -27,10 +27,10 @@ public interface Collectionᵂʳ<E> extends Collectionᴿᵈ<E>, Appenderᵂʳ<E
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
default boolean removeIfᵂʳ(Predicate<? super E> filter) {
|
default boolean removeIfᵂʳ(Predicate<? super E> filter) { // aufKnouffenAls
|
||||||
boolean result = false;
|
boolean result = false;
|
||||||
Iteratorᵂʳ<E> iterator = iteratorᵂʳ();
|
Iteratorᵂʳ<E> iterator = iteratorᵂʳ();
|
||||||
while (iterator.hasNextᴿᵈ()) {
|
while (iterator.hatNächsteᴿᵈ()) {
|
||||||
if (filter.test(iterator.nextᴿᵈ())) {
|
if (filter.test(iterator.nextᴿᵈ())) {
|
||||||
iterator.removeᵂʳ();
|
iterator.removeᵂʳ();
|
||||||
result = true;
|
result = true;
|
||||||
|
@ -39,7 +39,7 @@ public interface Collectionᵂʳ<E> extends Collectionᴿᵈ<E>, Appenderᵂʳ<E
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
default boolean retainAllᵂʳ(Collectionᴿᵈ<?> set) {
|
default boolean retainAllᵂʳ(Collectionᴿᵈ<?> set) { // bewierAllusAls
|
||||||
boolean result = false;
|
boolean result = false;
|
||||||
for (E e:streamᴿᵈ().collect(Collectors.toList())) {
|
for (E e:streamᴿᵈ().collect(Collectors.toList())) {
|
||||||
if (!set.containsᴿᵈ(e)) {
|
if (!set.containsᴿᵈ(e)) {
|
||||||
|
|
|
@ -0,0 +1,84 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.util;
|
||||||
|
|
||||||
|
import java.util.Comparator;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.Comparableբ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelLocalizer;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.Babelizeբᴬᵖᶦ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.util.function.Functionբ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface Comparatorբ<T> extends Comparator<T>,Babelizeբᴬᵖᶦ {
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface ןזױזזױזזךז<יזזױזזז> extends Comparatorբ<יזזױזזז>, BabelLocalizer.Hinarī {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default int compare(יזזױזזז ךיױז, יזזױזזז יזךז) {
|
||||||
|
return יזדןזױזזזזך(ךיױז, יזךז);
|
||||||
|
}
|
||||||
|
|
||||||
|
int יזדןזױזזזזך(יזזױזזז ךיױז, יזזױזזז יזךז);
|
||||||
|
|
||||||
|
default ןזױזזױזזךז<יזזױזזז> זדןזױזזזזױזזז() {
|
||||||
|
return (ךיױז,יזךז) -> ןזױזזױזזךז.this.reversed().compare(ךיױז,יזךז);
|
||||||
|
}
|
||||||
|
|
||||||
|
default ןזױזזױזזךז<יזזױזזז> זדןזױזזזזױזזױזזזזזזךז(ןזױזזױזזךז<יזזױזזז> זזזזך) {
|
||||||
|
return (ךיױז,יזךז) -> ןזױזזױזזךז.this.thenComparing(זזזזך).compare(ךיױז,יזךז);
|
||||||
|
}
|
||||||
|
|
||||||
|
///default <U extends Comparable<? super U>> Comparator<T> thenComparing(Function<? super T,? extends U> keyExtractor)
|
||||||
|
default <זױזזזזױ extends Comparableբ.זױזזױזזזז<? super זױזזזזױ>> ןזױזזױזזךז<יזזױזזז> זדןזױזזזזױזזױזזזזזזךז(Functionբ.ױױױיךיזזז<? super יזזױזזז, ? extends זױזזזזױ> זזזזזזזזך) {
|
||||||
|
return (ךיױז,יזךז) -> ןזױזזױזזךז.this.thenComparing(זזזזזזזזך).compare(ךיױז,יזךז);
|
||||||
|
}
|
||||||
|
|
||||||
|
// todo: add all others .....
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 平衡器<仿製藥> extends Comparatorբ<仿製藥>, BabelLocalizer.Mandarin {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default int compare(仿製藥 物零,仿製藥 物一) {
|
||||||
|
return 接受(物零,物一);
|
||||||
|
}
|
||||||
|
|
||||||
|
int 接受(仿製藥 物零,仿製藥 物一);
|
||||||
|
|
||||||
|
default 平衡器<仿製藥> 接著龸可比(平衡器<? super 仿製藥> 後) {
|
||||||
|
return (物零,物一) -> 平衡器.this.thenComparing(後).compare(物零,物一);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface संतुलक<जेनरिक> extends Comparatorբ<जेनरिक>, BabelLocalizer.Hindi {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default int compare(जेनरिक चीज़०,जेनरिक चीज़१) {
|
||||||
|
return मानना(चीज़०,चीज़१);
|
||||||
|
}
|
||||||
|
|
||||||
|
int मानना(जेनरिक चीज़०,जेनरिक चीज़१);
|
||||||
|
|
||||||
|
default संतुलक<जेनरिक> फिरꣻतुलनीय(संतुलक<? super जेनरिक> पीछे) {
|
||||||
|
return (चीज़०,चीज़१) -> संतुलक.this.thenComparing(पीछे).compare(चीज़०,चीज़१);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 𓄤𓊯𓀐<𓉢> extends Comparatorբ<𓉢>, BabelLocalizer.Hiero {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default int compare(𓉢 𓐠𓐄,𓉢 𓐠𓐅) {
|
||||||
|
return 𓁉(𓐠𓐄,𓐠𓐅);
|
||||||
|
}
|
||||||
|
|
||||||
|
int 𓁉(𓉢 𓐠𓐄,𓉢 𓐠𓐅);
|
||||||
|
|
||||||
|
default 𓄤𓊯𓀐<𓉢> 𓂐𓐗𓌭𓍝(𓄤𓊯𓀐<? super 𓉢> 𓅀) {
|
||||||
|
return (𓐠𓐄,𓐠𓐅) -> 𓄤𓊯𓀐.this.thenComparing(𓅀).compare(𓐠𓐄,𓐠𓐅);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -12,19 +12,23 @@ public interface Iterableᴿᵈ<E> {
|
||||||
|
|
||||||
Iteratorᴿᵈ<E> iteratorᴿᵈ();
|
Iteratorᴿᵈ<E> iteratorᴿᵈ();
|
||||||
|
|
||||||
|
//Iteratorᴿᵈ<E> iteꭆɐt𐌏rᴿᵈ();
|
||||||
|
|
||||||
default void forEachᴿᵈ(Consumer<? super E> action) {
|
default void forEachᴿᵈ(Consumer<? super E> action) {
|
||||||
iteratorᴿᵈ().forEachRemainingᴿᵈ(action);
|
iteratorᴿᵈ().forEachRemainingᴿᵈ(action);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Spliterator<E> splitže̩rᴿᵈ();
|
||||||
|
|
||||||
default Spliterator<E> spliteratorᴿᵈ() {
|
default Spliterator<E> spliteratorᴿᵈ() {
|
||||||
return Spliterators.spliteratorUnknownSize(iteratorᴿᵈ().iteratorᴼᶠ(), Spliterator.ORDERED);
|
return Spliterators.spliteratorUnknownSize(iteratorᴿᵈ().wrapIteratorᴿᵈ(), Spliterator.ORDERED);
|
||||||
}
|
}
|
||||||
|
|
||||||
default Iterable<E> iterableᴼᶠ() {
|
default Iterable<E> iterableᴼᶠ() { // iterable = itereerbaarⱽᵃⁿ
|
||||||
return new Iterable<>() {
|
return new Iterable<>() {
|
||||||
@Override
|
@Override
|
||||||
public Iterator<E> iterator() {
|
public Iterator<E> iterator() {
|
||||||
return iteratorᴿᵈ().iteratorᴼᶠ();
|
return iteratorᴿᵈ().wrapIteratorᴿᵈ();
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -0,0 +1,68 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.util;
|
||||||
|
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelLocalizer;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelMethodƉěꬵḭȵᶒᴬᵖᶦ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelTypeTowerReadßբᴬᵖᶦ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelTypeTowerWriteßբᴬᵖᶦ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelTypeꝐŕḯṿª₮ḕᴬᵖᶦ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.Babelizeբᴬᵖᶦ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.util.function.Consumerբ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public enum Iteratorᴬᵖᶦ implements Babelizeբᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
enum Ꝑŕḯṿª₮ḕ implements BabelTypeꝐŕḯṿª₮ḕᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ꞱElevatorᴿᵈ<E> extends BabelTypeTowerReadßբᴬᵖᶦ<Iteratorᴿᵈ<E>> {}
|
||||||
|
interface ꞱElevatorᵂʳ<E> extends BabelTypeTowerWriteßբᴬᵖᶦ<Iteratorᵂʳ<E>,Iteratorᴿᵈ<E>> {}
|
||||||
|
interface ꞱAsciiᴿᵈ<E> extends ꞱElevatorᴿᵈ<E>,BabelLocalizer.Ascii {}
|
||||||
|
interface ꞱAsciiᵂʳ<E> extends ꞱElevatorᵂʳ<E>,BabelLocalizer.Ascii {}
|
||||||
|
interface ꞱMandarinᴿᵈ<E> extends ꞱElevatorᴿᵈ<E>,BabelLocalizer.Mandarin {}
|
||||||
|
interface ꞱMandarinᵂʳ<E> extends ꞱElevatorᵂʳ<E>,BabelLocalizer.Mandarin {}
|
||||||
|
interface ꞱHindiᴿᵈ<E> extends ꞱElevatorᴿᵈ<E>,BabelLocalizer.Hindi {}
|
||||||
|
interface ꞱHindiᵂʳ<E> extends ꞱElevatorᵂʳ<E>,BabelLocalizer.Hindi {}
|
||||||
|
interface ꞱHieroᴿᵈ<E> extends ꞱElevatorᴿᵈ<E>,BabelLocalizer.Hiero {}
|
||||||
|
interface ꞱHieroᵂʳ<E> extends ꞱElevatorᵂʳ<E>,BabelLocalizer.Hiero {}
|
||||||
|
interface ꞱHinarīᴿᵈ<E> extends ꞱElevatorᴿᵈ<E>,BabelLocalizer.Hinarī {}
|
||||||
|
interface ꞱHinarīᵂʳ<E> extends ꞱElevatorᵂʳ<E>,BabelLocalizer.Hinarī {}
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒHasNextᴿᵈ implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel<E> extends Ꝑŕḯṿª₮ḕ.ꞱElevatorᴿᵈ<E> { boolean hatNächsteᴿᵈ(); } // hassVolgunde
|
||||||
|
interface ßabelAscii<E> extends Ꝑŕḯṿª₮ḕ.ꞱAsciiᴿᵈ<E> { default boolean hasNextRead() { return toBabelᴿᵈ().hatNächsteᴿᵈ(); } }
|
||||||
|
interface ßabelMandarin<E> extends Ꝑŕḯṿª₮ḕ.ꞱMandarinᴿᵈ<E> { default boolean 有龸旁邊龸輸入() { return toBabelᴿᵈ().hatNächsteᴿᵈ(); } }
|
||||||
|
interface ßabelHindi<E> extends Ꝑŕḯṿª₮ḕ.ꞱHindiᴿᵈ<E> { default boolean हैꣻअगलाꣻपढ़ना() { return toBabelᴿᵈ().hatNächsteᴿᵈ(); } }
|
||||||
|
interface ßabelHiero<E> extends Ꝑŕḯṿª₮ḕ.ꞱHieroᴿᵈ<E> { default boolean 𓎞𓐗𓄱𓆭𓐨() { return toBabelᴿᵈ().hatNächsteᴿᵈ(); } }
|
||||||
|
interface ßabelHinarī<E> extends Ꝑŕḯṿª₮ḕ.ꞱHinarīᴿᵈ<E> { default boolean ױזזזזױזזױזזזךזᴿᵈ() { return toBabelᴿᵈ().hatNächsteᴿᵈ(); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒNextᴿᵈ implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel<E> extends Ꝑŕḯṿª₮ḕ.ꞱElevatorᴿᵈ<E> { E nextᴿᵈ(); } // volgunde
|
||||||
|
interface ßabelAscii<E> extends Ꝑŕḯṿª₮ḕ.ꞱAsciiᴿᵈ<E> { default E nextRead() { return toBabelᴿᵈ().nextᴿᵈ(); }}
|
||||||
|
interface ßabelMandarin<E> extends Ꝑŕḯṿª₮ḕ.ꞱMandarinᴿᵈ<E> { default E 旁邊龸輸入() { return toBabelᴿᵈ().nextᴿᵈ(); }}
|
||||||
|
interface ßabelHindi<E> extends Ꝑŕḯṿª₮ḕ.ꞱHindiᴿᵈ<E> { default E अगलाꣻपढ़ना() { return toBabelᴿᵈ().nextᴿᵈ(); } }
|
||||||
|
interface ßabelHiero<E> extends Ꝑŕḯṿª₮ḕ.ꞱHieroᴿᵈ<E> { default E 𓄱𓆭𓐨() { return toBabelᴿᵈ().nextᴿᵈ(); } }
|
||||||
|
interface ßabelHinarī<E> extends Ꝑŕḯṿª₮ḕ.ꞱHinarīᴿᵈ<E> { default E ױזזזזױזזױᴿᵈ() { return toBabelᴿᵈ().nextᴿᵈ(); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒForEachRemainingᴿᵈ implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel<E> extends Ꝑŕḯṿª₮ḕ.ꞱElevatorᴿᵈ<E> { void forEachRemainingᴿᵈ(Consumer<? super E> action); } // furElk sd
|
||||||
|
interface ßabelAscii<E> extends Ꝑŕḯṿª₮ḕ.ꞱAsciiᴿᵈ<E> { default void forEachRemainingRead(Consumer<? super E> action) { toBabelᴿᵈ().forEachRemainingᴿᵈ(action); } }
|
||||||
|
interface ßabelMandarin<E> extends Ꝑŕḯṿª₮ḕ.ꞱMandarinᴿᵈ<E> { default void 為了龸每個龸殘餘龸輸入(Consumerբ.消費者<? super E> 行動) { toBabelᴿᵈ().forEachRemainingᴿᵈ(行動); } }
|
||||||
|
interface ßabelHindi<E> extends Ꝑŕḯṿª₮ḕ.ꞱHindiᴿᵈ<E> { default void वास्तेꣻप्रत्येकꣻबचाहुआꣻपढ़ना(Consumerբ.उपभोक्ता<? super E> गतिविधि) { toBabelᴿᵈ().forEachRemainingᴿᵈ(गतिविधि); } }
|
||||||
|
interface ßabelHiero<E> extends Ꝑŕḯṿª₮ḕ.ꞱHieroᴿᵈ<E> { default void 𓊖𓎛𓋖𓐗𓄱𓆭𓐨(Consumerբ.𓀁𓏁<? super E> 𓀢) { toBabelᴿᵈ().forEachRemainingᴿᵈ(𓀢); } }
|
||||||
|
interface ßabelHinarī<E> extends Ꝑŕḯṿª₮ḕ.ꞱHinarīᴿᵈ<E> { default void ױזזזזױזזזךזױזזזךזזךזᴿᵈ(Consumerբ.ךןךזױזןזױז<? super E> זױזז) { toBabelᴿᵈ().forEachRemainingᴿᵈ(זױזז); } }
|
||||||
|
}
|
||||||
|
enum ƉěꬵḭȵᶒRemoveᵂʳ implements BabelMethodƉěꬵḭȵᶒᴬᵖᶦ {
|
||||||
|
;
|
||||||
|
interface ßabel<E> extends Ꝑŕḯṿª₮ḕ.ꞱElevatorᵂʳ<E> { void removeᵂʳ(); } // afroussen
|
||||||
|
interface ßabelAscii<E> extends Ꝑŕḯṿª₮ḕ.ꞱAsciiᵂʳ<E> { default void removeWrite() { toBabelᵂʳ().removeᵂʳ(); }}
|
||||||
|
interface ßabelMandarin<E> extends Ꝑŕḯṿª₮ḕ.ꞱMandarinᵂʳ<E> { default void 消除龸輸出() { toBabelᵂʳ().removeᵂʳ(); }}
|
||||||
|
interface ßabelHindi<E> extends Ꝑŕḯṿª₮ḕ.ꞱHindiᵂʳ<E> { default void हटानाꣻलिखना() { toBabelᵂʳ().removeᵂʳ(); } }
|
||||||
|
interface ßabelHiero<E> extends Ꝑŕḯṿª₮ḕ.ꞱHieroᵂʳ<E> { default void 𓌩𓐧() { toBabelᵂʳ().removeᵂʳ(); } }
|
||||||
|
interface ßabelHinarī<E> extends Ꝑŕḯṿª₮ḕ.ꞱHinarīᵂʳ<E> { default void יזזױזױזױזזזᵂʳ() { toBabelᵂʳ().removeᵂʳ(); } }
|
||||||
|
}
|
||||||
|
}
|
|
@ -6,29 +6,65 @@ import java.util.function.Consumer;
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface Iteratorᴿᵈ<E> {
|
public interface Iteratorᴿᵈ<E> extends
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒForEachRemainingᴿᵈ.ßabel<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒHasNextᴿᵈ.ßabel<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒNextᴿᵈ.ßabel<E> {
|
||||||
|
|
||||||
boolean hasNextᴿᵈ();
|
interface ßabelAsciiᴿᵈ<E> extends
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒForEachRemainingᴿᵈ.ßabelAscii<E>,
|
||||||
E nextᴿᵈ();
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒHasNextᴿᵈ.ßabelAscii<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒNextᴿᵈ.ßabelAscii<E> {
|
||||||
default void forEachRemainingᴿᵈ(Consumer<? super E> action) {
|
|
||||||
while (hasNextᴿᵈ()) {
|
|
||||||
action.accept(nextᴿᵈ());
|
|
||||||
}
|
}
|
||||||
|
interface ßabelMandarinᴿᵈ<E> extends
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒForEachRemainingᴿᵈ.ßabelMandarin<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒHasNextᴿᵈ.ßabelMandarin<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒNextᴿᵈ.ßabelMandarin<E> {
|
||||||
|
}
|
||||||
|
interface ßabelHindiᴿᵈ<E> extends
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒForEachRemainingᴿᵈ.ßabelHindi<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒHasNextᴿᵈ.ßabelHindi<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒNextᴿᵈ.ßabelHindi<E> {
|
||||||
|
}
|
||||||
|
interface ßabelHieroᴿᵈ<E> extends
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒForEachRemainingᴿᵈ.ßabelHiero<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒHasNextᴿᵈ.ßabelHiero<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒNextᴿᵈ.ßabelHiero<E> {
|
||||||
|
}
|
||||||
|
interface ßabelHinarīᴿᵈ<E> extends
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒForEachRemainingᴿᵈ.ßabelHinarī<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒHasNextᴿᵈ.ßabelHinarī<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒNextᴿᵈ.ßabelHinarī<E> {
|
||||||
}
|
}
|
||||||
|
|
||||||
default Iterator<E> iteratorᴼᶠ() {
|
default ßabelAsciiᴿᵈ<E> toBabelAsciiᴿᵈ() { return new ßabelAsciiᴿᵈ<>() { @Override public Iteratorᴿᵈ<E> toBabelᴿᵈ() { return Iteratorᴿᵈ.this.toBabelᴿᵈ(); }};}
|
||||||
|
default ßabelMandarinᴿᵈ<E> toBabelMandarinᴿᵈ() { return new ßabelMandarinᴿᵈ<>() { @Override public Iteratorᴿᵈ<E> toBabelᴿᵈ() { return Iteratorᴿᵈ.this.toBabelᴿᵈ(); }};}
|
||||||
|
default ßabelHindiᴿᵈ<E> toBabelHindiᴿᵈ() { return new ßabelHindiᴿᵈ<>() { @Override public Iteratorᴿᵈ<E> toBabelᴿᵈ() { return Iteratorᴿᵈ.this.toBabelᴿᵈ(); }};}
|
||||||
|
default ßabelHieroᴿᵈ<E> toBabelHieroᴿᵈ() { return new ßabelHieroᴿᵈ<>() { @Override public Iteratorᴿᵈ<E> toBabelᴿᵈ() { return Iteratorᴿᵈ.this.toBabelᴿᵈ(); }};}
|
||||||
|
default ßabelHinarīᴿᵈ<E> toBabelHinarīᴿᵈ() { return new ßabelHinarīᴿᵈ<>() { @Override public Iteratorᴿᵈ<E> toBabelᴿᵈ() { return Iteratorᴿᵈ.this.toBabelᴿᵈ(); }};}
|
||||||
|
|
||||||
|
default Iterator<E> wrapIteratorᴿᵈ() {
|
||||||
return wrapᴼᶠ(this);
|
return wrapᴼᶠ(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void forEachRemainingᴿᵈ(Consumer<? super E> action) {
|
||||||
|
Iteratorᴿᵈ<E> iterator = toBabelᴿᵈ();
|
||||||
|
//Iterator<E> i = iterator.wrapIteratorᴿᵈ();
|
||||||
|
//i.forEachRemaining(action);
|
||||||
|
|
||||||
|
while (iterator.hatNächsteᴿᵈ()) {
|
||||||
|
action.accept(iterator.nextᴿᵈ());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static <T> Iterator<T> wrapᴼᶠ(Iteratorᴿᵈ<T> iterator) {
|
static <T> Iterator<T> wrapᴼᶠ(Iteratorᴿᵈ<T> iterator) {
|
||||||
return new Iterator<>() {
|
return new Iterator<>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean hasNext() {
|
public boolean hasNext() {
|
||||||
return iterator.hasNextᴿᵈ();
|
this.forEachRemaining(null);
|
||||||
|
return iterator.hatNächsteᴿᵈ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T next() {
|
public T next() {
|
||||||
return iterator.nextᴿᵈ();
|
return iterator.nextᴿᵈ();
|
||||||
|
@ -39,14 +75,17 @@ public interface Iteratorᴿᵈ<E> {
|
||||||
static <T> Iteratorᴿᵈ<T> wrapᴼᶠ(Iterator<T> iterator) {
|
static <T> Iteratorᴿᵈ<T> wrapᴼᶠ(Iterator<T> iterator) {
|
||||||
return new Iteratorᴿᵈ<>() {
|
return new Iteratorᴿᵈ<>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean hasNextᴿᵈ() {
|
public boolean hatNächsteᴿᵈ() {
|
||||||
return iterator.hasNext();
|
return iterator.hasNext();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T nextᴿᵈ() {
|
public T nextᴿᵈ() {
|
||||||
return iterator.next();
|
return iterator.next();
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
|
public Iteratorᴿᵈ<T> toBabelᴿᵈ() {
|
||||||
|
return this;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,27 +5,45 @@ import java.util.Iterator;
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface Iteratorᵂʳ<E> extends Iteratorᴿᵈ<E> {
|
public interface Iteratorᵂʳ<E> extends Iteratorᴿᵈ<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒRemoveᵂʳ.ßabel<E> {
|
||||||
|
|
||||||
default void removeᵂʳ() {
|
interface ßabelAsciiᵂʳ<E> extends Iteratorᴿᵈ.ßabelAsciiᴿᵈ<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒRemoveᵂʳ.ßabelAscii<E> {
|
||||||
|
}
|
||||||
|
interface ßabelMandarinᵂʳ<E> extends Iteratorᴿᵈ.ßabelMandarinᴿᵈ<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒRemoveᵂʳ.ßabelMandarin<E> {
|
||||||
|
}
|
||||||
|
interface ßabelHindiᵂʳ<E> extends Iteratorᴿᵈ.ßabelHindiᴿᵈ<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒRemoveᵂʳ.ßabelHindi<E> {
|
||||||
|
}
|
||||||
|
interface ßabelHieroᵂʳ<E> extends Iteratorᴿᵈ.ßabelHieroᴿᵈ<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒRemoveᵂʳ.ßabelHiero<E> {
|
||||||
|
}
|
||||||
|
interface ßabelHinarīᵂʳ<E> extends Iteratorᴿᵈ.ßabelHinarīᴿᵈ<E>,
|
||||||
|
Iteratorᴬᵖᶦ.ƉěꬵḭȵᶒRemoveᵂʳ.ßabelHinarī<E> {
|
||||||
}
|
}
|
||||||
|
|
||||||
default Iterator<E> iteratorᴼᶠ() {
|
default ßabelAsciiᵂʳ<E> toBabelAsciiᵂʳ() { return new ßabelAsciiᵂʳ<>() { @Override public Iteratorᵂʳ<E> toBabelᵂʳ() { return Iteratorᵂʳ.this.toBabelᵂʳ(); }};}
|
||||||
return wrapᴼᶠ(this);
|
default ßabelMandarinᵂʳ<E> toBabelMandarinᵂʳ() { return new ßabelMandarinᵂʳ<>() { @Override public Iteratorᵂʳ<E> toBabelᵂʳ() { return Iteratorᵂʳ.this.toBabelᵂʳ(); }};}
|
||||||
|
default ßabelHindiᵂʳ<E> toBabelHindiᵂʳ() { return new ßabelHindiᵂʳ<>() { @Override public Iteratorᵂʳ<E> toBabelᵂʳ() { return Iteratorᵂʳ.this.toBabelᵂʳ(); }};}
|
||||||
|
default ßabelHieroᵂʳ<E> toBabelHieroᵂʳ() { return new ßabelHieroᵂʳ<>() { @Override public Iteratorᵂʳ<E> toBabelᵂʳ() { return Iteratorᵂʳ.this.toBabelᵂʳ(); }};}
|
||||||
|
default ßabelHinarīᵂʳ<E> toBabelHinarīᵂʳ() { return new ßabelHinarīᵂʳ<>() { @Override public Iteratorᵂʳ<E> toBabelᵂʳ() { return Iteratorᵂʳ.this.toBabelᵂʳ(); }};}
|
||||||
|
|
||||||
|
default Iterator<E> wrapIteratorᵂʳ() {
|
||||||
|
return Iteratorᵂʳ.wrapᴼᶠ(toBabelᵂʳ());
|
||||||
}
|
}
|
||||||
|
|
||||||
static <T> Iterator<T> wrapᴼᶠ(Iteratorᵂʳ<T> iterator) {
|
static <T> Iterator<T> wrapᴼᶠ(Iteratorᵂʳ<T> iterator) {
|
||||||
return new Iterator<>() {
|
return new Iterator<>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean hasNext() {
|
public boolean hasNext() {
|
||||||
return iterator.hasNextᴿᵈ();
|
return iterator.hatNächsteᴿᵈ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T next() {
|
public T next() {
|
||||||
return iterator.nextᴿᵈ();
|
return iterator.nextᴿᵈ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void remove() {
|
public void remove() {
|
||||||
iterator.removeᵂʳ();
|
iterator.removeᵂʳ();
|
||||||
|
@ -36,19 +54,21 @@ public interface Iteratorᵂʳ<E> extends Iteratorᴿᵈ<E> {
|
||||||
static <T> Iteratorᵂʳ<T> wrapᴼᶠ(Iterator<T> iterator) {
|
static <T> Iteratorᵂʳ<T> wrapᴼᶠ(Iterator<T> iterator) {
|
||||||
return new Iteratorᵂʳ<>() {
|
return new Iteratorᵂʳ<>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean hasNextᴿᵈ() {
|
public boolean hatNächsteᴿᵈ() {
|
||||||
return iterator.hasNext();
|
return iterator.hasNext();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T nextᴿᵈ() {
|
public T nextᴿᵈ() {
|
||||||
return iterator.next();
|
return iterator.next();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void removeᵂʳ() {
|
public void removeᵂʳ() {
|
||||||
iterator.remove();
|
iterator.remove();
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
|
public Iteratorᵂʳ<T> toBabelᵂʳ() {
|
||||||
|
return this;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,34 +18,33 @@ public interface ListIteratorᴿᵈ<E> extends Iteratorᴿᵈ<E> {
|
||||||
static <T> ListIteratorᴿᵈ<T> wrapᴼᶠ(ListIterator<T> iterator) {
|
static <T> ListIteratorᴿᵈ<T> wrapᴼᶠ(ListIterator<T> iterator) {
|
||||||
return new ListIteratorᴿᵈ<>() {
|
return new ListIteratorᴿᵈ<>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean hasNextᴿᵈ() {
|
public boolean hatNächsteᴿᵈ() {
|
||||||
return iterator.hasNext();
|
return iterator.hasNext();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T nextᴿᵈ() {
|
public T nextᴿᵈ() {
|
||||||
return iterator.next();
|
return iterator.next();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean hasPreviousᴿᵈ() {
|
public boolean hasPreviousᴿᵈ() {
|
||||||
return iterator.hasPrevious();
|
return iterator.hasPrevious();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int nextIndexᴿᵈ() {
|
public int nextIndexᴿᵈ() {
|
||||||
return iterator.nextIndex();
|
return iterator.nextIndex();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T previousᴿᵈ() {
|
public T previousᴿᵈ() {
|
||||||
return iterator.previous();
|
return iterator.previous();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int previousIndexᴿᵈ() {
|
public int previousIndexᴿᵈ() {
|
||||||
return iterator.previousIndex();
|
return iterator.previousIndex();
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
|
public Iteratorᴿᵈ<T> toBabelᴿᵈ() {
|
||||||
|
return this;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,44 +19,36 @@ public interface ListIteratorᵂʳ<E> extends ListIteratorᴿᵈ<E>,Iteratorᵂ
|
||||||
return new ListIterator<>() {
|
return new ListIterator<>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean hasNext() {
|
public boolean hasNext() {
|
||||||
return iterator.hasNextᴿᵈ();
|
return iterator.hatNächsteᴿᵈ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T next() {
|
public T next() {
|
||||||
return iterator.nextᴿᵈ();
|
return iterator.nextᴿᵈ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void add(T arg0) {
|
public void add(T arg0) {
|
||||||
iterator.addᵂʳ(arg0);
|
iterator.addᵂʳ(arg0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean hasPrevious() {
|
public boolean hasPrevious() {
|
||||||
return iterator.hasPreviousᴿᵈ();
|
return iterator.hasPreviousᴿᵈ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int nextIndex() {
|
public int nextIndex() {
|
||||||
return iterator.nextIndexᴿᵈ();
|
return iterator.nextIndexᴿᵈ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T previous() {
|
public T previous() {
|
||||||
return iterator.previousᴿᵈ();
|
return iterator.previousᴿᵈ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int previousIndex() {
|
public int previousIndex() {
|
||||||
return iterator.previousIndexᴿᵈ();
|
return iterator.previousIndexᴿᵈ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void remove() {
|
public void remove() {
|
||||||
iterator.removeᵂʳ();
|
iterator.removeᵂʳ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void set(T arg0) {
|
public void set(T arg0) {
|
||||||
iterator.setᵂʳ(arg0);
|
iterator.setᵂʳ(arg0);
|
||||||
|
@ -67,44 +59,45 @@ public interface ListIteratorᵂʳ<E> extends ListIteratorᴿᵈ<E>,Iteratorᵂ
|
||||||
static <T> ListIteratorᵂʳ<T> wrapᴼᶠ(ListIterator<T> iterator) {
|
static <T> ListIteratorᵂʳ<T> wrapᴼᶠ(ListIterator<T> iterator) {
|
||||||
return new ListIteratorᵂʳ<>() {
|
return new ListIteratorᵂʳ<>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean hasNextᴿᵈ() {
|
public boolean hatNächsteᴿᵈ() {
|
||||||
return iterator.hasNext();
|
return iterator.hasNext();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T nextᴿᵈ() {
|
public T nextᴿᵈ() {
|
||||||
return iterator.next();
|
return iterator.next();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean hasPreviousᴿᵈ() {
|
public boolean hasPreviousᴿᵈ() {
|
||||||
return iterator.hasPrevious();
|
return iterator.hasPrevious();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int nextIndexᴿᵈ() {
|
public int nextIndexᴿᵈ() {
|
||||||
return iterator.nextIndex();
|
return iterator.nextIndex();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T previousᴿᵈ() {
|
public T previousᴿᵈ() {
|
||||||
return iterator.previous();
|
return iterator.previous();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int previousIndexᴿᵈ() {
|
public int previousIndexᴿᵈ() {
|
||||||
return iterator.previousIndex();
|
return iterator.previousIndex();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addᵂʳ(T e) {
|
public void addᵂʳ(T e) {
|
||||||
iterator.add(e);
|
iterator.add(e);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setᵂʳ(T e) {
|
public void setᵂʳ(T e) {
|
||||||
iterator.set(e);
|
iterator.set(e);
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
|
public void removeᵂʳ() {
|
||||||
|
iterator.remove();
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public Iteratorᵂʳ<T> toBabelᵂʳ() {
|
||||||
|
return this;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,8 +13,8 @@ public interface Listᵂʳ<E> extends Listᴿᵈ<E>, Collectionᵂʳ<E> {
|
||||||
|
|
||||||
default boolean addAllᵂʳ(int index, Collectionᴿᵈ<? extends E> c) {
|
default boolean addAllᵂʳ(int index, Collectionᴿᵈ<? extends E> c) {
|
||||||
Iteratorᴿᵈ<? extends E> iterator = c.iteratorᴿᵈ();
|
Iteratorᴿᵈ<? extends E> iterator = c.iteratorᴿᵈ();
|
||||||
boolean result = iterator.hasNextᴿᵈ();
|
boolean result = iterator.hatNächsteᴿᵈ();
|
||||||
while (iterator.hasNextᴿᵈ()) {
|
while (iterator.hatNächsteᴿᵈ()) {
|
||||||
addᵂʳ(index, iterator.nextᴿᵈ());
|
addᵂʳ(index, iterator.nextᴿᵈ());
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
|
|
|
@ -3,7 +3,10 @@ package love.distributedrebirth.bassboon.jpp.util;
|
||||||
import java.util.PrimitiveIterator;
|
import java.util.PrimitiveIterator;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.Bãß;
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.number.matrix.M02MatrixBinary;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.number.matrix.M04MatrixQuad;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
public interface PrimitiveBooleanIterator extends PrimitiveIterator<Boolean,PrimitiveBooleanConsumer> {
|
public interface PrimitiveBooleanIterator extends PrimitiveIterator<Boolean,PrimitiveBooleanConsumer> {
|
||||||
|
@ -28,4 +31,59 @@ public interface PrimitiveBooleanIterator extends PrimitiveIterator<Boolean,Prim
|
||||||
action.accept(nextBoolean());
|
action.accept(nextBoolean());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
default PrimitiveNibbleIterator toNibbleIteratorIndianBig() {
|
||||||
|
return toNibbleIterator(M04MatrixQuad.STATIC);
|
||||||
|
}
|
||||||
|
|
||||||
|
default PrimitiveNibbleIterator toNibbleIteratorIndianLittle() {
|
||||||
|
return toNibbleIterator(M04MatrixQuad.TAIL);
|
||||||
|
}
|
||||||
|
|
||||||
|
default PrimitiveNibbleIterator toNibbleIterator(M04MatrixQuad order) {
|
||||||
|
return new PrimitiveNibbleIterator() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean hasNext() {
|
||||||
|
return PrimitiveBooleanIterator.this.hasNext();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public byte nextNibble() {
|
||||||
|
int current = 0;
|
||||||
|
for (int i=0;i<4;i++) {
|
||||||
|
current += PrimitiveBooleanIterator.this.nextBoolean()?1:0 << order.rȧñkNummerBlokWaarde(i);
|
||||||
|
}
|
||||||
|
return (byte) current;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
default PrimitiveByteIterator toByteIterator(M02MatrixBinary order) {
|
||||||
|
if (M02MatrixBinary.TAIL.equals(order)) {
|
||||||
|
return toNibbleIterator(M04MatrixQuad.TAIL).toByteIterator(order);
|
||||||
|
}
|
||||||
|
return toNibbleIterator(M04MatrixQuad.STATIC).toByteIterator(order);
|
||||||
|
}
|
||||||
|
|
||||||
|
static PrimitiveBooleanIterator valueOfZeroAscii(String binarySnake) {
|
||||||
|
return valueOf(binarySnake, Bãß.ℭỗᶇṧⱦᶏꬼȶʂ.STR_ZERO);
|
||||||
|
}
|
||||||
|
|
||||||
|
static PrimitiveBooleanIterator valueOf(String binarySnake, String zeroChar) {
|
||||||
|
OfInt values = binarySnake.codePoints().iterator();
|
||||||
|
int zeroInt = zeroChar.codePointAt(Bãß.ℭỗᶇṧⱦᶏꬼȶʂ.INT_ZERO);
|
||||||
|
return new PrimitiveBooleanIterator() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean hasNext() {
|
||||||
|
return values.hasNext();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean nextBoolean() {
|
||||||
|
return zeroInt != values.nextInt();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,40 +30,37 @@ public interface PrimitiveByteIterator extends PrimitiveIterator<Byte,PrimitiveB
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
default PrimitiveNibbleIterator toBooleanIteratorBigIndian() {
|
default PrimitiveNibbleIterator toNibbleIteratorIndianBig() {
|
||||||
return toNibbleIterator(M02MatrixBinary.M_01);
|
return toNibbleIterator(M02MatrixBinary.STATIC);
|
||||||
}
|
}
|
||||||
|
|
||||||
default PrimitiveNibbleIterator toBooleanIteratorLittleIndian() {
|
default PrimitiveNibbleIterator toNibbleIteratorIndianLittle() {
|
||||||
return toNibbleIterator(M02MatrixBinary.M_02);
|
return toNibbleIterator(M02MatrixBinary.TAIL);
|
||||||
}
|
}
|
||||||
|
|
||||||
default PrimitiveNibbleIterator toNibbleIterator(M02MatrixBinary order) {
|
default PrimitiveNibbleIterator toNibbleIterator(M02MatrixBinary order) {
|
||||||
return new PrimitiveNibbleIterator() {
|
return new PrimitiveNibbleIterator() {
|
||||||
int currentOffset = -1;
|
int offset = 0;
|
||||||
byte current = 0;
|
byte current = 0;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean hasNext() {
|
public boolean hasNext() {
|
||||||
if (currentOffset < 0 | currentOffset > 1) {
|
if (offset > 0) {
|
||||||
if (!PrimitiveByteIterator.this.hasNext()) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
current = PrimitiveByteIterator.this.nextByte();
|
|
||||||
currentOffset = 0;
|
|
||||||
} else {
|
|
||||||
currentOffset++;
|
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
return PrimitiveByteIterator.this.hasNext();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public byte nextNibble() {
|
public byte nextNibble() {
|
||||||
if (currentOffset < 0 | currentOffset > 1) {
|
if (offset == 0) {
|
||||||
throw new IllegalStateException("Illegal offset of block value: "+currentOffset);
|
current = PrimitiveByteIterator.this.nextByte();
|
||||||
|
}
|
||||||
|
int value = (current >> (order.rȧñkNummerBlokWaarde(offset) * 4)) & 0x0F;
|
||||||
|
offset++;
|
||||||
|
if (offset == 2) {
|
||||||
|
offset = 0;
|
||||||
}
|
}
|
||||||
int value = (current >> (order.rȧñkNummerBlokWaarde(currentOffset) * 4)) & 0x0F;
|
|
||||||
currentOffset = currentOffset++;
|
|
||||||
return (byte) value;
|
return (byte) value;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
@ -4,6 +4,7 @@ import java.util.PrimitiveIterator;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.number.matrix.M02MatrixBinary;
|
||||||
import love.distributedrebirth.bassboon.jpp.lang.number.matrix.M04MatrixQuad;
|
import love.distributedrebirth.bassboon.jpp.lang.number.matrix.M04MatrixQuad;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@ -30,42 +31,86 @@ public interface PrimitiveNibbleIterator extends PrimitiveIterator<Byte,Primitiv
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
default PrimitiveBooleanIterator toBooleanIteratorBigIndian() {
|
default PrimitiveBooleanIterator toBooleanIteratorIndianBig() {
|
||||||
return toBooleanIterator(M04MatrixQuad.M_0027);
|
return toBooleanIterator(M04MatrixQuad.STATIC);
|
||||||
}
|
}
|
||||||
|
|
||||||
default PrimitiveBooleanIterator toBooleanIteratorLittleIndian() {
|
default PrimitiveBooleanIterator toBooleanIteratorIndianLittle() {
|
||||||
return toBooleanIterator(M04MatrixQuad.M_0228);
|
return toBooleanIterator(M04MatrixQuad.TAIL);
|
||||||
}
|
}
|
||||||
|
|
||||||
default PrimitiveBooleanIterator toBooleanIterator(M04MatrixQuad order) {
|
default PrimitiveBooleanIterator toBooleanIterator(M04MatrixQuad order) {
|
||||||
return new PrimitiveBooleanIterator() {
|
return new PrimitiveBooleanIterator() {
|
||||||
int currentOffset = -1;
|
int offset = 0;
|
||||||
byte current = 0;
|
byte current = 0;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean hasNext() {
|
public boolean hasNext() {
|
||||||
if (currentOffset < 0 | currentOffset > 3) {
|
if (offset > 0) {
|
||||||
if (!PrimitiveNibbleIterator.this.hasNext()) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
current = PrimitiveNibbleIterator.this.nextNibble();
|
|
||||||
currentOffset = 0;
|
|
||||||
} else {
|
|
||||||
currentOffset++;
|
|
||||||
}
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
return PrimitiveNibbleIterator.this.hasNext();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean nextBoolean() {
|
public boolean nextBoolean() {
|
||||||
if (currentOffset < 0 | currentOffset > 3) {
|
if (offset == 0) {
|
||||||
throw new IllegalStateException("Illegal offset of block value: "+currentOffset);
|
current = PrimitiveNibbleIterator.this.nextNibble();
|
||||||
|
}
|
||||||
|
int value = (current >> order.rȧñkNummerBlokWaarde(offset)) & 1;
|
||||||
|
offset++;
|
||||||
|
if (offset == 4) {
|
||||||
|
offset = 0;
|
||||||
}
|
}
|
||||||
int value = (current >> order.rȧñkNummerBlokWaarde(currentOffset)) & 1;
|
|
||||||
currentOffset = currentOffset++;
|
|
||||||
return value == 1;
|
return value == 1;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
default PrimitiveByteIterator toByteIteratorBigIndian() {
|
||||||
|
return toByteIterator(M02MatrixBinary.STATIC);
|
||||||
|
}
|
||||||
|
|
||||||
|
default PrimitiveByteIterator toByteIteratorLittleIndian() {
|
||||||
|
return toByteIterator(M02MatrixBinary.TAIL);
|
||||||
|
}
|
||||||
|
|
||||||
|
default PrimitiveByteIterator toByteIterator(M02MatrixBinary order) {
|
||||||
|
return new PrimitiveByteIterator() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean hasNext() {
|
||||||
|
return PrimitiveNibbleIterator.this.hasNext();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public byte nextByte() {
|
||||||
|
int current = 0;
|
||||||
|
for (int i=0;i<2;i++) {
|
||||||
|
current += PrimitiveNibbleIterator.this.nextNibble() << order.rȧñkNummerBlokWaarde(i) * 4;
|
||||||
|
}
|
||||||
|
return (byte) current;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
default PrimitiveNibbleIterator toNibbleIteratorMatrix(M04MatrixQuad order) {
|
||||||
|
return new PrimitiveNibbleIterator() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean hasNext() {
|
||||||
|
return PrimitiveNibbleIterator.this.hasNext();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public byte nextNibble() {
|
||||||
|
int value = PrimitiveNibbleIterator.this.nextNibble();
|
||||||
|
int current = 0;
|
||||||
|
for (int i=0;i<4;i++) {
|
||||||
|
current += value << order.rȧñkNummerBlokWaarde(i) * 4;
|
||||||
|
}
|
||||||
|
return (byte) current;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,9 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.util;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.Babelizeբᴬᵖᶦ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface Spliteratorբ<T> extends Babelizeբᴬᵖᶦ {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,78 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.util.function;
|
||||||
|
|
||||||
|
import java.util.function.BiConsumer;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelLocalizer;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.Babelizeբᴬᵖᶦ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface BiConsumerբ<T,U> extends BiConsumer<T,U>, Babelizeբᴬᵖᶦ {
|
||||||
|
|
||||||
|
void annehmen(T t,U u);
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void accept(T t,U u) {
|
||||||
|
annehmen(t, u);
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface ױזזױךיױךיך<יזזױזזז,יךיױ> extends BiConsumerբ<יזזױזזז,יךיױ>, BabelLocalizer.Hinarī {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void annehmen(יזזױזזז ױז,יךיױ ךזז) {
|
||||||
|
זױזזז(ױז,ךזז);
|
||||||
|
}
|
||||||
|
|
||||||
|
void זױזזז(יזזױזזז ױז,יךיױ ךזז);
|
||||||
|
|
||||||
|
default ױזזױךיױךיך<יזזױזזז,יךיױ> זזזזױזזױךיךיזז(ױזזױךיױךיך<? super יזזױזזז,? super יךיױ> ױױזז) {
|
||||||
|
return (ױז,ךזז) -> ױזזױךיױךיך.this.andThen(ױױזז).accept(ױז, ךזז);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 雙消費者<仿製藥,青蛙藥> extends BiConsumerբ<仿製藥,青蛙藥>, BabelLocalizer.Mandarin {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void annehmen(仿製藥 物,青蛙藥 其他) {
|
||||||
|
接受(物,其他);
|
||||||
|
}
|
||||||
|
|
||||||
|
void 接受(仿製藥 物,青蛙藥 其他);
|
||||||
|
|
||||||
|
default 雙消費者<仿製藥,青蛙藥> 和龸接著(雙消費者<? super 仿製藥,? super 青蛙藥> 後) {
|
||||||
|
return (物,其他) -> 雙消費者.this.andThen(後).accept(物, 其他);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface दोहराꣻउपभोक्ता<जेनरिक,जम्पफ्रॉग> extends BiConsumerբ<जेनरिक,जम्पफ्रॉग>, BabelLocalizer.Hindi {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void annehmen(जेनरिक चीज़,जम्पफ्रॉग अन्य) {
|
||||||
|
मानना(चीज़,अन्य);
|
||||||
|
}
|
||||||
|
|
||||||
|
void मानना(जेनरिक चीज़,जम्पफ्रॉग अन्य);
|
||||||
|
|
||||||
|
default दोहराꣻउपभोक्ता<जेनरिक,जम्पफ्रॉग> औरꣻफिर(दोहराꣻउपभोक्ता<? super जेनरिक,? super जम्पफ्रॉग> पीछे) {
|
||||||
|
return (चीज़,अन्य) -> दोहराꣻउपभोक्ता.this.andThen(पीछे).accept(चीज़,अन्य);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 𓇌𓀁<𓉢,𓉣> extends BiConsumerբ<𓉢,𓉣>, BabelLocalizer.Hiero {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void annehmen(𓉢 𓐠,𓉣 𓐐) {
|
||||||
|
𓁉(𓐠,𓐐);
|
||||||
|
}
|
||||||
|
|
||||||
|
void 𓁉(𓉢 𓐠,𓉣 𓐐);
|
||||||
|
|
||||||
|
default 𓇌𓀁<𓉢,𓉣> 𓍰𓐗𓂐(𓇌𓀁<? super 𓉢,? super 𓉣> 𓅀) {
|
||||||
|
return (𓐠,𓐐) -> 𓇌𓀁.this.andThen(𓅀).accept(𓐠,𓐐);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,78 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.util.function;
|
||||||
|
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelLocalizer;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.Babelizeբᴬᵖᶦ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface Consumerբ<T> extends Consumer<T>,Babelizeբᴬᵖᶦ {
|
||||||
|
|
||||||
|
void annehmen(T t);
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void accept(T t) {
|
||||||
|
annehmen(t);
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface ךןךזױזןזױז<יזזױזזז> extends Consumerբ<יזזױזזז>, BabelLocalizer.Hinarī {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void annehmen(יזזױזזז יךיױזזךז) {
|
||||||
|
יזדןזױזזזזך(יךיױזזךז);
|
||||||
|
}
|
||||||
|
|
||||||
|
void יזדןזױזזזזך(יזזױזזז יךיױזזךז);
|
||||||
|
|
||||||
|
default ךןךזױזןזױז<יזזױזזז> זדןזױזזזזױזזז(ךןךזױזןזױז<? super יזזױזזז> יךיױזזךז) {
|
||||||
|
return (װװ) -> ךןךזױזןזױז.this.andThen(יךיױזזךז).accept(װװ);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 消費者<仿製藥> extends Consumerբ<仿製藥>, BabelLocalizer.Mandarin {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void annehmen(仿製藥 物) {
|
||||||
|
接受(物);
|
||||||
|
}
|
||||||
|
|
||||||
|
void 接受(仿製藥 物);
|
||||||
|
|
||||||
|
default 消費者<仿製藥> 和龸接著(消費者<? super 仿製藥> 後) {
|
||||||
|
return (物) -> 消費者.this.andThen(後).accept(物);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface उपभोक्ता<जेनरिक> extends Consumerբ<जेनरिक>, BabelLocalizer.Hindi {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void annehmen(जेनरिक चीज़) {
|
||||||
|
मानना(चीज़);
|
||||||
|
}
|
||||||
|
|
||||||
|
void मानना(जेनरिक चीज़);
|
||||||
|
|
||||||
|
default उपभोक्ता<जेनरिक> औरꣻफिर(उपभोक्ता<? super जेनरिक> पीछे) {
|
||||||
|
return (चीज़) -> उपभोक्ता.this.andThen(पीछे).accept(चीज़);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 𓀁𓏁<𓉢> extends Consumerբ<𓉢>, BabelLocalizer.Hiero {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default void annehmen(𓉢 𓐠) {
|
||||||
|
𓁉(𓐠);
|
||||||
|
}
|
||||||
|
|
||||||
|
void 𓁉(𓉢 𓐠);
|
||||||
|
|
||||||
|
default 𓀁𓏁<𓉢> 𓍰𓐗𓂐(𓀁𓏁<? super 𓉢> 𓅀) {
|
||||||
|
return (𓐠) -> 𓀁𓏁.this.andThen(𓅀).accept(𓐠);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,130 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.util.function;
|
||||||
|
|
||||||
|
import java.util.function.Function;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelLocalizer;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.Babelizeբᴬᵖᶦ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface Functionբ<T,R> extends Function<T,R>, Babelizeբᴬᵖᶦ {
|
||||||
|
|
||||||
|
R ausführen(T t);
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default R apply(T t) {
|
||||||
|
return ausführen(t);
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface ױױױיךיזזז<יזזױזזז,יךיױ> extends Functionբ<יזזױזזז,יךיױ>, BabelLocalizer.Hinarī {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default יךיױ ausführen(יזזױזזז ױז) {
|
||||||
|
return זױױזזזױזז(ױז);
|
||||||
|
}
|
||||||
|
|
||||||
|
יךיױ זױױזזזױזז(יזזױזזז ױז);
|
||||||
|
|
||||||
|
default <זױךי> ױױױיךיזזז<יזזױזזז,זױךי> זזזזױזזױךיךיזז(ױױױיךיזזז<? super יךיױ,? extends זױךי> ױױזז) {
|
||||||
|
return (זױךיךי) -> ױױױיךיזזז.this.andThen(ױױזז).apply(זױךיךי);
|
||||||
|
}
|
||||||
|
|
||||||
|
default <זױךי> ױױױיךיזזז<זױךי,יךיױ> זזזױךיךיזזױזזז(ױױױיךיזזז<? super זױךי,? extends יזזױזזז> זזױױ) {
|
||||||
|
return (זױךיךי) -> ױױױיךיזזז.this.compose(זזױױ).apply(זױךיךי);
|
||||||
|
}
|
||||||
|
|
||||||
|
static <יזזױזזז> ױױױיךיזזז<יזזױזזז,יזזױזזז> זזזױױזזױזז() {
|
||||||
|
return new ױױױיךיזזז<>() {
|
||||||
|
@Override
|
||||||
|
public יזזױזזז זױױזזזױזז(יזזױזזז ױז) {
|
||||||
|
return ױז;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 功能<仿製藥,青蛙藥> extends Functionբ<仿製藥,青蛙藥>, BabelLocalizer.Mandarin {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default 青蛙藥 ausführen(仿製藥 物) {
|
||||||
|
return 接受(物);
|
||||||
|
}
|
||||||
|
|
||||||
|
青蛙藥 接受(仿製藥 物);
|
||||||
|
|
||||||
|
default <蛋從> 功能<仿製藥,蛋從> 和龸接著(功能<? super 青蛙藥,? extends 蛋從> 後) {
|
||||||
|
return (物) -> 功能.this.andThen(後).apply(物);
|
||||||
|
}
|
||||||
|
|
||||||
|
default <蛋從> 功能<蛋從,青蛙藥> 構成前(功能<? super 蛋從,? extends 仿製藥> 字首) {
|
||||||
|
return (物) -> 功能.this.compose(字首).apply(物);
|
||||||
|
}
|
||||||
|
|
||||||
|
static <仿製藥> 功能<仿製藥,仿製藥> 身份() {
|
||||||
|
return new 功能<>() {
|
||||||
|
@Override
|
||||||
|
public 仿製藥 接受(仿製藥 物) {
|
||||||
|
return 物;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface काम<जेनरिक,जम्पफ्रॉग> extends Functionբ<जेनरिक,जम्पफ्रॉग>, BabelLocalizer.Hindi {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default जम्पफ्रॉग ausführen(जेनरिक चीज़) {
|
||||||
|
return मानना(चीज़);
|
||||||
|
}
|
||||||
|
|
||||||
|
जम्पफ्रॉग मानना(जेनरिक चीज़);
|
||||||
|
|
||||||
|
default <अंडाफ> काम<जेनरिक,अंडाफ> औरꣻफिर(काम<? super जम्पफ्रॉग,? extends अंडाफ> पीछे) {
|
||||||
|
return (चीज़) -> काम.this.andThen(पीछे).apply(चीज़);
|
||||||
|
}
|
||||||
|
|
||||||
|
default <अंडाफ> काम<अंडाफ,जम्पफ्रॉग> पहलाकर्ता(काम<? super अंडाफ,? extends जेनरिक> हैडर) {
|
||||||
|
return (चीज़) -> काम.this.compose(हैडर).apply(चीज़);
|
||||||
|
}
|
||||||
|
|
||||||
|
static <जेनरिक> काम<जेनरिक,जेनरिक> पहचान() {
|
||||||
|
return new काम<जेनरिक, जेनरिक>() {
|
||||||
|
@Override
|
||||||
|
public जेनरिक मानना(जेनरिक चीज़) {
|
||||||
|
return चीज़;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 𓁟𓎓𓄟<𓉢,𓉣> extends Functionբ<𓉢,𓉣>, BabelLocalizer.Hiero {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default 𓉣 ausführen(𓉢 𓐠) {
|
||||||
|
return 𓁉(𓐠);
|
||||||
|
}
|
||||||
|
|
||||||
|
𓉣 𓁉(𓉢 𓐠);
|
||||||
|
|
||||||
|
default <𓉡> 𓁟𓎓𓄟<𓉢,𓉡> 𓍰𓐗𓂐(𓁟𓎓𓄟<? super 𓉣,? extends 𓉡> 𓅀) {
|
||||||
|
return (𓐠) -> 𓁟𓎓𓄟.this.andThen(𓅀).apply(𓐠);
|
||||||
|
}
|
||||||
|
|
||||||
|
default <𓉡> 𓁟𓎓𓄟<𓉡,𓉣> 𓆥(𓁟𓎓𓄟<? super 𓉡,? extends 𓉢> 𓅽) {
|
||||||
|
return (𓐠) -> 𓁟𓎓𓄟.this.compose(𓅽).apply(𓐠);
|
||||||
|
}
|
||||||
|
|
||||||
|
static <𓉢> 𓁟𓎓𓄟<𓉢,𓉢> 𓀀() {
|
||||||
|
return new 𓁟𓎓𓄟<>() {
|
||||||
|
@Override
|
||||||
|
public 𓉢 𓁉(𓉢 𓐠) {
|
||||||
|
return 𓐠;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,62 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.util.function;
|
||||||
|
|
||||||
|
import java.util.function.Supplier;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.BabelLocalizer;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.lang.babel.Babelizeբᴬᵖᶦ;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public interface Supplierբ<T> extends Supplier<T>, Babelizeբᴬᵖᶦ {
|
||||||
|
|
||||||
|
T abholen();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default T get() {
|
||||||
|
return abholen();
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface זזױױזדױךז<יזזױזזז> extends Supplierբ<יזזױזזז>, BabelLocalizer.Hinarī {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default יזזױזזז abholen() {
|
||||||
|
return יזױזדזזזןזדןזך();
|
||||||
|
}
|
||||||
|
|
||||||
|
יזזױזזז יזױזדזזזןזדןזך();
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 供應商<仿製藥> extends Supplierբ<仿製藥>, BabelLocalizer.Mandarin {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default 仿製藥 abholen() {
|
||||||
|
return 得到();
|
||||||
|
}
|
||||||
|
|
||||||
|
仿製藥 得到();
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface प्रदायक<जेनरिक> extends Supplierբ<जेनरिक>, BabelLocalizer.Hindi {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default जेनरिक abholen() {
|
||||||
|
return प्राप्त();
|
||||||
|
}
|
||||||
|
|
||||||
|
जेनरिक प्राप्त();
|
||||||
|
}
|
||||||
|
|
||||||
|
@FunctionalInterface
|
||||||
|
interface 𓊷𓉭𓆅<𓉢> extends Supplierբ<𓉢>, BabelLocalizer.Hiero {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
default 𓉢 abholen() {
|
||||||
|
return 𓀦();
|
||||||
|
}
|
||||||
|
|
||||||
|
𓉢 𓀦();
|
||||||
|
}
|
||||||
|
}
|
|
@ -4,7 +4,7 @@ import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@MBeanAttributeType注(Boolean.class)
|
@MBeanAttributeType注(Boolean.class)
|
||||||
public class AttributeBooleanᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
public class AttributeBooleanᴶᴹˣ extends MBeanAttribute抽ᴶᴹˣ {
|
||||||
private Boolean value;
|
private Boolean value;
|
||||||
|
|
||||||
public AttributeBooleanᴶᴹˣ(String name, String description) {
|
public AttributeBooleanᴶᴹˣ(String name, String description) {
|
||||||
|
|
|
@ -4,7 +4,7 @@ import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@MBeanAttributeType注(Integer.class)
|
@MBeanAttributeType注(Integer.class)
|
||||||
public class AttributeIntegerᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
public class AttributeIntegerᴶᴹˣ extends MBeanAttribute抽ᴶᴹˣ {
|
||||||
private Integer value;
|
private Integer value;
|
||||||
|
|
||||||
public AttributeIntegerᴶᴹˣ(String name, String description) {
|
public AttributeIntegerᴶᴹˣ(String name, String description) {
|
||||||
|
|
|
@ -4,7 +4,7 @@ import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@MBeanAttributeType注(Long.class)
|
@MBeanAttributeType注(Long.class)
|
||||||
public class AttributeLongᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
public class AttributeLongᴶᴹˣ extends MBeanAttribute抽ᴶᴹˣ {
|
||||||
private Long value;
|
private Long value;
|
||||||
|
|
||||||
public AttributeLongᴶᴹˣ(String name, String description) {
|
public AttributeLongᴶᴹˣ(String name, String description) {
|
||||||
|
|
|
@ -4,7 +4,7 @@ import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@MBeanAttributeType注(String.class)
|
@MBeanAttributeType注(String.class)
|
||||||
public class AttributeStringᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
public class AttributeStringᴶᴹˣ extends MBeanAttribute抽ᴶᴹˣ {
|
||||||
private String value;
|
private String value;
|
||||||
|
|
||||||
public AttributeStringᴶᴹˣ(String name, String description) {
|
public AttributeStringᴶᴹˣ(String name, String description) {
|
||||||
|
|
|
@ -4,7 +4,7 @@ import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@MBeanAttributeType注(Long.class)
|
@MBeanAttributeType注(Long.class)
|
||||||
public class CounterGuageᴶᴹˣ extends AbstractMBeanAttributeᴶᴹˣ {
|
public class CounterGuageᴶᴹˣ extends MBeanAttribute抽ᴶᴹˣ {
|
||||||
private volatile long counter;
|
private volatile long counter;
|
||||||
|
|
||||||
public CounterGuageᴶᴹˣ(String name, String description) {
|
public CounterGuageᴶᴹˣ(String name, String description) {
|
||||||
|
|
|
@ -3,11 +3,11 @@ package love.distributedrebirth.bassboon.yd.jmx;
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
abstract public class AbstractMBeanAttributeᴶᴹˣ implements MBeanAttributeᴶᴹˣ {
|
abstract public class MBeanAttribute抽ᴶᴹˣ implements MBeanAttributeᴶᴹˣ {
|
||||||
private final String name;
|
private final String name;
|
||||||
private final String description;
|
private final String description;
|
||||||
|
|
||||||
public AbstractMBeanAttributeᴶᴹˣ(String name, String description) {
|
public MBeanAttribute抽ᴶᴹˣ(String name, String description) {
|
||||||
this.name = name;
|
this.name = name;
|
||||||
this.description = description;
|
this.description = description;
|
||||||
}
|
}
|
|
@ -0,0 +1,119 @@
|
||||||
|
package love.distributedrebirth.bassboon.jpp.lang;
|
||||||
|
|
||||||
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Assertions;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.util.Iteratorᴿᵈ;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.util.function.Consumerբ.𓀁𓏁;
|
||||||
|
import love.distributedrebirth.bassboon.jpp.util.function.Consumerբ.उपभोक्ता;
|
||||||
|
|
||||||
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
public class BabelTest {
|
||||||
|
|
||||||
|
enum Bᐜᐝᐞᐟᐠᐡᐢᐣᐤᐥᐦᐧᐨᐩᐪᑉᑊᑋᒃᒄᒡᒢᒻᒼᒽᒾᓐᓑᓒᓪᓫᔅᔆᔇᔈᔉᔊᔋᔥᔾᔿᕀᕁᕐᕑᕝᕪᕻᕯᕽᖅᖕᖖᖟᖦᖮᗮᘁᙆᙇᙾᙿᣔᣕᣖᣗᣘᣙᣚᣛᣜᣝᣞᣟᣳᣴᣵ {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
enum Translatec̈ {
|
||||||
|
CODE_LANG ("普通話", "𓂀", "हिन्दी"),
|
||||||
|
CODE_SEP ("龸", "𓐗", "ꣻ"),
|
||||||
|
|
||||||
|
GENERICS_T ("仿製藥", "𓉢", "जेनरिक"),
|
||||||
|
GENERICS_U ("青蛙藥", "𓉣", "जम्पफ्रॉग"),
|
||||||
|
GENERICS_V ("蛋從", "𓉡", "अंडाफ"),
|
||||||
|
|
||||||
|
ARG_THING ("物", "𓐠", "चीज़"),
|
||||||
|
ARG_OTHER ("其他", "𓐐", "अन्य"),
|
||||||
|
|
||||||
|
FN_ACTION ("行動", "𓀢", "गतिविधि"),
|
||||||
|
FN_ACCEPT ("接受", "𓁉", "मानना"),
|
||||||
|
FN_AND ("和", "𓍰", "और"),
|
||||||
|
FN_THAN ("接著", "𓂐", "फिर"),
|
||||||
|
FN_AFTER ("後", "𓅀", "पीछे "),
|
||||||
|
FN_BEFORE ("字首", "𓅽", "हैडर"),
|
||||||
|
FN_TO ("至", "𓀨", "प्रति"),
|
||||||
|
FN_AT ("存在", "𓃣", "मौजूद"),
|
||||||
|
FN_RUN ("賽跑者", "𓀟", "दौड़ना"),
|
||||||
|
FN_GET ("得到", "𓀦", "प्राप्त"),
|
||||||
|
FN_HAS ("有", "𓎞", "है"),
|
||||||
|
FN_FOR ("為了", "𓊖", "वास्ते"),
|
||||||
|
FN_EACH ("每個", "𓎛", "प्रत्येक"),
|
||||||
|
FN_NEXT ("旁邊", "𓄱𓆭", "अगला"),
|
||||||
|
FN_READ ("輸入", "𓐨", "पढ़ना"),
|
||||||
|
FN_WRITE ("輸出", "𓐧", "लिखना"),
|
||||||
|
FN_REMOVE ("消除", "𓌩", "हटाना"),
|
||||||
|
FN_COMPARE ("相比", "𓍝", "तुलना"),
|
||||||
|
FN_COMPOSE ("構成前", "𓆥", "पहलाकर्ता"),
|
||||||
|
FN_IDENTITY ("身份", "𓀀", "पहचान"),
|
||||||
|
FN_APPEND ("附加", "𓆒𓀜", "जोड़ना"),
|
||||||
|
FN_CODE ("代碼", "𓊏", "कोड"),
|
||||||
|
FN_POINT ("觀點", "𓀄", "बिंदु"),
|
||||||
|
FN_CAPACITY ("容量", "𓆣𓆥", "क्षमता"),
|
||||||
|
FN_CHAR ("信", "𓂁𓂃𓂄", "पत्र"),
|
||||||
|
FN_COUNT ("數數", "𓍮𓁤", "गणना"),
|
||||||
|
|
||||||
|
CLZ_CONSUMER ("消費者", "𓀁𓏁", "उपभोक्ता"),
|
||||||
|
CLZ_BICONSUMER ("雙消費者", "𓇌𓀁", "दोहराꣻउपभोक्ता"),
|
||||||
|
CLZ_RUNNABLE ("可運行", "𓌭𓀟", "जंगम"),
|
||||||
|
CLZ_SUPPLIER ("供應商", "𓊷𓉭𓆅", "प्रदायक"),
|
||||||
|
CLZ_COMPARABLE ("可比", "𓌭𓍝", "तुलनीय"),
|
||||||
|
CLZ_FUNCTION ("功能", "𓁟𓎓𓄟", "काम"),
|
||||||
|
CLZ_COMPARATOR ("平衡器", "𓄤𓊯𓀐", "संतुलक"),
|
||||||
|
;
|
||||||
|
private String 普通話; // normale
|
||||||
|
private String 𓂀;//normal font
|
||||||
|
private String हिन्दी; // auto micro font thus must be be last...
|
||||||
|
|
||||||
|
// note: ------- \/
|
||||||
|
private Translatec̈(String 普通話, String 𓂀, String हिन्दी) {
|
||||||
|
this.普通話 = 普通話;
|
||||||
|
this.𓂀 = 𓂀;
|
||||||
|
this.हिन्दी = हिन्दी;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//abstract protected void ײₐₚᵢI18Nᵗˣᵗײ(T api);
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testObjectToHuman() {
|
||||||
|
Assertions.assertTrue(Translatec̈.values()[0] != null);
|
||||||
|
for (Translatec̈ t :Translatec̈.values()) {
|
||||||
|
Assertions.assertNotNull(t.普通話);
|
||||||
|
Assertions.assertNotNull(t.𓂀);
|
||||||
|
Assertions.assertNotNull(t.हिन्दी);
|
||||||
|
//System.out.println(t.name()+"="+t.china);
|
||||||
|
}
|
||||||
|
𓀁𓏁<String> test = new 𓀁𓏁<>() {
|
||||||
|
@Override
|
||||||
|
public void 𓁉(String 𓐠) {
|
||||||
|
System.out.println("test=" + 𓐠);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
𓀁𓏁<String> test2 = test.𓍰𓐗𓂐((v) -> {
|
||||||
|
System.out.println("test2="+v);
|
||||||
|
});
|
||||||
|
|
||||||
|
test.𓁉("aaa");
|
||||||
|
|
||||||
|
Consumer<String> run = test2; //.𓀨𓐗𓀁();
|
||||||
|
run.accept("test123");
|
||||||
|
|
||||||
|
StringBuilderբ.ßabelHindi ग = StringBuilderբ.instanceᴺᵉʷ().toBabelHindi();
|
||||||
|
StringUnicode str = new StringUnicode("sDfgdklsfjglksdjfgljsdklfjgklds");
|
||||||
|
Iteratorᴿᵈ<Integer> ii = Iteratorᴿᵈ.wrapᴼᶠ(str.codePoints().iterator());
|
||||||
|
Iteratorᴿᵈ.ßabelHindiᴿᵈ<Integer> गला = ii.toBabelHindiᴿᵈ();
|
||||||
|
while (गला.हैꣻअगलाꣻपढ़ना()) {
|
||||||
|
गला.वास्तेꣻप्रत्येकꣻबचाहुआꣻपढ़ना(new उपभोक्ता<Integer>() {
|
||||||
|
@Override
|
||||||
|
public void मानना(Integer चीज़) {
|
||||||
|
ग.जोड़नाꣻकोडꣻबिंदु(चीज़);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
System.out.println(ग);
|
||||||
|
}
|
||||||
|
}
|
|
@ -84,7 +84,7 @@ public enum Base2PartsFactory implements BãßBȍőnAbacusInstanceMBeanʸᴰ<Bas
|
||||||
private static final int[] SUPPORTED_BASES = {2,3,4,5,6,7,8,9,10,11,12,14,15,16,17,18,20,21,25,60,64,87,192};
|
private static final int[] SUPPORTED_BASES = {2,3,4,5,6,7,8,9,10,11,12,14,15,16,17,18,20,21,25,60,64,87,192};
|
||||||
|
|
||||||
private Base2PartsFactory() {
|
private Base2PartsFactory() {
|
||||||
Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int[] BãßBases() {
|
public int[] BãßBases() {
|
||||||
|
|
|
@ -68,7 +68,7 @@ public enum Base2Terminator implements BãßBȍőnAbacusInstanceMBeanʸᴰ<Base2
|
||||||
private CounterGuageᴶᴹˣ writeV144ToctaTypeWrites;
|
private CounterGuageᴶᴹˣ writeV144ToctaTypeWrites;
|
||||||
|
|
||||||
private Base2Terminator() {
|
private Base2Terminator() {
|
||||||
Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int Bãß2ReadTong(InputStream input, List<V072Tong> output) throws IOException {
|
public int Bãß2ReadTong(InputStream input, List<V072Tong> output) throws IOException {
|
||||||
|
|
|
@ -48,7 +48,7 @@ public enum Base2WarpCore implements BãßBȍőnAbacusInstanceMBeanʸᴰ<Base2Wa
|
||||||
private CounterGuageᴶᴹˣ warpCoreWrites;
|
private CounterGuageᴶᴹˣ warpCoreWrites;
|
||||||
|
|
||||||
private Base2WarpCore() {
|
private Base2WarpCore() {
|
||||||
Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
||||||
armedWarpWaterName.setValueString("default");
|
armedWarpWaterName.setValueString("default");
|
||||||
armedWarpWaterDesc.setValueString("Current active cipher.");
|
armedWarpWaterDesc.setValueString("Current active cipher.");
|
||||||
armedWarpCipherLock.setValueBoolean(false);
|
armedWarpCipherLock.setValueBoolean(false);
|
||||||
|
@ -60,7 +60,7 @@ public enum Base2WarpCore implements BãßBȍőnAbacusInstanceMBeanʸᴰ<Base2Wa
|
||||||
TerminatorPartᶦᶦ<?>[] parts = Base2PartsFactory.INSTANCE.BãßBuildPartsByBase(base);
|
TerminatorPartᶦᶦ<?>[] parts = Base2PartsFactory.INSTANCE.BãßBuildPartsByBase(base);
|
||||||
for (TerminatorPartᶦᶦ<?> part:parts) {
|
for (TerminatorPartᶦᶦ<?> part:parts) {
|
||||||
logHandler.accept("Lock: "+part.ráàmExportNaam()+" since: "+part.ráàmAuthorKopieërRecht());
|
logHandler.accept("Lock: "+part.ráàmExportNaam()+" since: "+part.ráàmAuthorKopieërRecht());
|
||||||
Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.墳ᴸᵒᶜᵏ(part);
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.墳ᴸᵒᶜᵏ(part);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,23 +3,30 @@ package love.distributedrebirth.numberxd.base2t.part;
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnDuytsFlüstern注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnDuytsFlüstern注;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorBullet;
|
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorBullet;
|
||||||
|
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartAlt1注;
|
||||||
|
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartAlt2ᶦᶦ;
|
||||||
|
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartAlt2注;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartᶦᶦ;
|
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartᶦᶦ;
|
||||||
|
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@BãßBȍőnDuytsFlüstern注(purpose = "The distribution by 2 (low/high).")
|
@BãßBȍőnDuytsFlüstern注(purpose = "The distribution by 2 (low/high).")
|
||||||
public enum T002PartBinary implements TerminatorPartᶦᶦ<T002PartBinary> {
|
@TerminatorPartAlt1注(name = "Binary number", website = "https://en.wikipedia.org/wiki/Binary_number")
|
||||||
|
@TerminatorPartAlt2注(name = "Binary punched holes", website = "https://en.wikipedia.org/wiki/Binary_number#Representation")
|
||||||
|
public enum T002PartBinary implements TerminatorPartAlt2ᶦᶦ<T002PartBinary> {
|
||||||
|
|
||||||
PART_1("˧", "低", "low"),
|
PART_1("˧", "低", "low", "0", "☐"),
|
||||||
PART_2("꜔", "高", "high"),
|
PART_2("꜔", "高", "high","1", "☒"),
|
||||||
;
|
;
|
||||||
|
|
||||||
public final static T002PartBinary STATIC = T002PartBinary.PART_1;
|
public final static T002PartBinary STATIC = T002PartBinary.PART_1;
|
||||||
public final static T002PartBinary TAIL = STATIC.rȧñkNaarLaatste();
|
public final static T002PartBinary TAIL = STATIC.rȧñkNaarLaatste();
|
||||||
|
|
||||||
private T002PartBinary(String dialTone, String chinaKey, String chinaValue) {
|
private T002PartBinary(String dialTone, String chinaKey, String chinaValue, String alt1Value, String alt2Value) {
|
||||||
TerminatorPartᶦᶦ.Ꝑŕḯṿª₮ḕ.יהוהʸᴰ(this, dialTone, enumPart -> {
|
TerminatorPartᶦᶦ.Ꝑŕḯṿª₮ḕ.יהוהʸᴰ(this, dialTone, enumPart -> {
|
||||||
enumPart.PUT_OBJ(TerminatorBullet.CHINA_KEY, chinaKey);
|
enumPart.PUT_OBJ(TerminatorBullet.CHINA_KEY, chinaKey);
|
||||||
enumPart.PUT_OBJ(TerminatorBullet.CHINA_VALUE, chinaValue);
|
enumPart.PUT_OBJ(TerminatorBullet.CHINA_VALUE, chinaValue);
|
||||||
|
enumPart.PUT_OBJ(TerminatorBullet.ALT_1_VALUE, alt1Value);
|
||||||
|
enumPart.PUT_OBJ(TerminatorBullet.ALT_2_VALUE, alt2Value);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,8 +2,9 @@ package love.distributedrebirth.numberxd.base2t.part;
|
||||||
|
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnAuthor注;
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnDuytsFlüstern注;
|
import love.distributedrebirth.bassboon.clazz.BãßBȍőnDuytsFlüstern注;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartAlt1ᶦᶦ;
|
|
||||||
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartAlt1注;
|
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartAlt1注;
|
||||||
|
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartAlt2ᶦᶦ;
|
||||||
|
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartAlt2注;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorBullet;
|
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorBullet;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartShiftBitsʸᴰ;
|
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartShiftBitsʸᴰ;
|
||||||
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartᶦᶦ;
|
import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartᶦᶦ;
|
||||||
|
@ -11,16 +12,17 @@ import love.distributedrebirth.numberxd.base2t.part.ii.TerminatorPartᶦᶦ;
|
||||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@BãßBȍőnDuytsFlüstern注(purpose = "The distribution by 8 (eight trigrams).")
|
@BãßBȍőnDuytsFlüstern注(purpose = "The distribution by 8 (eight trigrams).")
|
||||||
@TerminatorPartAlt1注(name = "The eight trigrams", website = "https://en.wikipedia.org/wiki/Bagua")
|
@TerminatorPartAlt1注(name = "The eight trigrams", website = "https://en.wikipedia.org/wiki/Bagua")
|
||||||
public enum T008PartOctal implements TerminatorPartShiftBitsʸᴰ<T008PartOctal>, TerminatorPartAlt1ᶦᶦ<T008PartOctal> {
|
@TerminatorPartAlt2注(name = "Hinarī(ヒナリー) is octal hebrew binary", website = "http://distributedrebirth.love")
|
||||||
|
public enum T008PartOctal implements TerminatorPartShiftBitsʸᴰ<T008PartOctal>, TerminatorPartAlt2ᶦᶦ<T008PartOctal> {
|
||||||
|
|
||||||
PART_1("˥","乾","creative", 0, "☰"),
|
PART_1("˥","乾","creative", 0, "☰", "ײ"),
|
||||||
PART_2("˩","兌","joyous", 3, "☱"),
|
PART_2("˩","兌","joyous", 3, "☱", "ױ"),
|
||||||
PART_3("꜒","離","clinging", 6, "☲"),
|
PART_3("꜒","離","clinging", 6, "☲", "ו"),
|
||||||
PART_4("꜖","震","arousing", 9, "☳"),
|
PART_4("꜖","震","arousing", 9, "☳", "י"),
|
||||||
PART_5("꜈","巽","gentle", 12, "☴"),
|
PART_5("꜈","巽","gentle", 12, "☴", "ז"),
|
||||||
PART_6("꜌","坎","abysmal", 15, "☵"),
|
PART_6("꜌","坎","abysmal", 15, "☵", "ד"),
|
||||||
PART_7("꜍","艮","silent", 18, "☶"),
|
PART_7("꜍","艮","silent", 18, "☶", "ן"),
|
||||||
PART_8("꜑","坤","receptive", 21, "☷"),
|
PART_8("꜑","坤","receptive", 21, "☷", "ך"),
|
||||||
;
|
;
|
||||||
|
|
||||||
public final static int BIT_COUNT = 3;
|
public final static int BIT_COUNT = 3;
|
||||||
|
@ -28,12 +30,13 @@ public enum T008PartOctal implements TerminatorPartShiftBitsʸᴰ<T008PartOctal>
|
||||||
public final static T008PartOctal STATIC = T008PartOctal.PART_1;
|
public final static T008PartOctal STATIC = T008PartOctal.PART_1;
|
||||||
public final static T008PartOctal TAIL = STATIC.rȧñkNaarLaatste();
|
public final static T008PartOctal TAIL = STATIC.rȧñkNaarLaatste();
|
||||||
|
|
||||||
private T008PartOctal(String dialTone, String chinaKey, String chinaValue, int shiftBits, String alt1Value) {
|
private T008PartOctal(String dialTone, String chinaKey, String chinaValue, int shiftBits, String alt1Value, String alt2Value) {
|
||||||
TerminatorPartᶦᶦ.Ꝑŕḯṿª₮ḕ.יהוהʸᴰ(this, dialTone, enumPart -> {
|
TerminatorPartᶦᶦ.Ꝑŕḯṿª₮ḕ.יהוהʸᴰ(this, dialTone, enumPart -> {
|
||||||
enumPart.PUT_OBJ(TerminatorBullet.CHINA_KEY, chinaKey);
|
enumPart.PUT_OBJ(TerminatorBullet.CHINA_KEY, chinaKey);
|
||||||
enumPart.PUT_OBJ(TerminatorBullet.CHINA_VALUE, chinaValue);
|
enumPart.PUT_OBJ(TerminatorBullet.CHINA_VALUE, chinaValue);
|
||||||
enumPart.PUT_OBJ(TerminatorBullet.SHIFT_BITS, Integer.valueOf(shiftBits));
|
enumPart.PUT_OBJ(TerminatorBullet.SHIFT_BITS, Integer.valueOf(shiftBits));
|
||||||
enumPart.PUT_OBJ(TerminatorBullet.ALT_1_VALUE, alt1Value);
|
enumPart.PUT_OBJ(TerminatorBullet.ALT_1_VALUE, alt1Value);
|
||||||
|
enumPart.PUT_OBJ(TerminatorBullet.ALT_2_VALUE, alt2Value);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -66,4 +66,16 @@ public enum T020PartVigesimal implements TerminatorPartAlt4ᶦᶦ<T020PartVigesi
|
||||||
public T020PartVigesimal BãßValueOfOpenLC(String openLCKey) {
|
public T020PartVigesimal BãßValueOfOpenLC(String openLCKey) {
|
||||||
return OPENLC_MAP.get(openLCKey);
|
return OPENLC_MAP.get(openLCKey);
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
|
@TerminatorPartAlt1注(name = "SI-Unit Types", website = "https://en.wikipedia.org/wiki/Metric_prefix")
|
||||||
|
interface MetricUnitTypes {
|
||||||
|
enum Priv {
|
||||||
|
;
|
||||||
|
private final static StringUnicode VALUES = StringUnicode.valueOf("ASDFDBNGFSBFSDJGISDJGISDFJGBSDF");
|
||||||
|
}
|
||||||
|
default StringUnicode metaValue(int ordinal) {
|
||||||
|
return StringUnicode.valueOf(new StringBuilder().appendCodePoint(Priv.VALUES.codePointAtStream(ordinal)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
|
@ -46,7 +46,7 @@ public interface TerminatorPartᶦᶦ<T extends TerminatorPartᶦᶦ<T>> extends
|
||||||
|
|
||||||
@SafeVarargs
|
@SafeVarargs
|
||||||
public static <Y extends TerminatorPartᶦᶦ<Y>> void יהוהʸᴰ(Y boon, String dialTone, Consumer<BãßBȍőnAbacusZombieCorpse<TerminatorBullet>>...fleshFeeders) {
|
public static <Y extends TerminatorPartᶦᶦ<Y>> void יהוהʸᴰ(Y boon, String dialTone, Consumer<BãßBȍőnAbacusZombieCorpse<TerminatorBullet>>...fleshFeeders) {
|
||||||
Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.𓂀ױןייזדזיודזיןןזזזןױ𓉢(boon);
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.𓂀ױןייזדזיודזיןןזזזןױ𓉢(boon);
|
||||||
boon.toBBC().NOISE_OF(BãßBȍőnAbacusEnumBase響ᴼᶠ.class).rȧñkRingToonInluiden(dialTone);
|
boon.toBBC().NOISE_OF(BãßBȍőnAbacusEnumBase響ᴼᶠ.class).rȧñkRingToonInluiden(dialTone);
|
||||||
BãßBȍőnAbacusZombieCorpse<TerminatorBullet> corpse = BãßBȍőnAbacusZombieCorpse.castᴼᶠ(boon.toEnumZombie());
|
BãßBȍőnAbacusZombieCorpse<TerminatorBullet> corpse = BãßBȍőnAbacusZombieCorpse.castᴼᶠ(boon.toEnumZombie());
|
||||||
for (Consumer<BãßBȍőnAbacusZombieCorpse<TerminatorBullet>> flesh:fleshFeeders) {
|
for (Consumer<BãßBȍőnAbacusZombieCorpse<TerminatorBullet>> flesh:fleshFeeders) {
|
||||||
|
|
|
@ -80,6 +80,8 @@ public enum BaseGlyphSet implements BãßBȍőnAbacusSetMBeanʸᴰ<BaseGlyphSet>
|
||||||
new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ"),
|
new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ"),
|
||||||
new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ"),
|
new BaseGlyphSetNumber("ō","α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ"),
|
||||||
new BaseGlyphSetNumber("α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ","ο","π","ϟ","ρ","σ","τ","υ","φ","χ","ψ","ω","ϡ")),
|
new BaseGlyphSetNumber("α","β","γ","δ","ε","ϝ","ζ","η","θ","ι","κ","λ","μ","ν","ξ","ο","π","ϟ","ρ","σ","τ","υ","φ","χ","ψ","ω","ϡ")),
|
||||||
|
//Hindi "० १ २ ३ ४ ५ ६ ७ ८ ९"
|
||||||
|
//Urdu "۰ ۱ ۲ ۳ ۴ ۵ ۶ ۷ ۸ ۹"
|
||||||
BENGALI(
|
BENGALI(
|
||||||
new BaseGlyphSetNumber("০","১","২","৩","৪","৫","৬","৭","৮","৯"),
|
new BaseGlyphSetNumber("০","১","২","৩","৪","৫","৬","৭","৮","৯"),
|
||||||
new BaseGlyphSetNumber("০","১","২","৩","৪","৫","৬","৭","৮","৯","জ্ঞ","ক্ষ","হ","স","ষ","শ"),
|
new BaseGlyphSetNumber("০","১","২","৩","৪","৫","৬","৭","৮","৯","জ্ঞ","ক্ষ","হ","স","ষ","শ"),
|
||||||
|
@ -180,7 +182,7 @@ public enum BaseGlyphSet implements BãßBȍőnAbacusSetMBeanʸᴰ<BaseGlyphSet>
|
||||||
}
|
}
|
||||||
|
|
||||||
private BaseGlyphSet(BaseGlyphSetNumber numbers, BaseGlyphSetNumber hex, BaseGlyphSetNumber gematria, Boolean reverseScript) {
|
private BaseGlyphSet(BaseGlyphSetNumber numbers, BaseGlyphSetNumber hex, BaseGlyphSetNumber gematria, Boolean reverseScript) {
|
||||||
Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
||||||
BãßBȍőnAbacusZombieCorpse<BaseGlyphSetBullet> corpse = BãßBȍőnAbacusZombieCorpse.castᴼᶠ(toEnumZombie());
|
BãßBȍőnAbacusZombieCorpse<BaseGlyphSetBullet> corpse = BãßBȍőnAbacusZombieCorpse.castᴼᶠ(toEnumZombie());
|
||||||
corpse.PUT_OBJ(BaseGlyphSetBullet.NUMBERS, numbers);
|
corpse.PUT_OBJ(BaseGlyphSetBullet.NUMBERS, numbers);
|
||||||
corpse.PUT_OBJ(BaseGlyphSetBullet.HEXIMALS, hex);
|
corpse.PUT_OBJ(BaseGlyphSetBullet.HEXIMALS, hex);
|
||||||
|
|
|
@ -42,7 +42,7 @@ public enum GDXAppTos4 implements BãßBȍőnAbacusInstanceMBeanʸᴰ<GDXAppTos4
|
||||||
private AttributeStringᴶᴹˣ startupArgs;
|
private AttributeStringᴶᴹˣ startupArgs;
|
||||||
|
|
||||||
private GDXAppTos4() {
|
private GDXAppTos4() {
|
||||||
Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.𓂀ױןייזדזיודזיןןזזזןױ𓉢(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void BãßInit(List<String> args, int viewWidth, int viewHeight, NativeFileChooser fileChooser) {
|
public void BãßInit(List<String> args, int viewWidth, int viewHeight, NativeFileChooser fileChooser) {
|
||||||
|
|
|
@ -134,6 +134,7 @@ public class GDXAppTos4BootFactory {
|
||||||
"love.distributedrebirth.numberxd,"+
|
"love.distributedrebirth.numberxd,"+
|
||||||
"love.distributedrebirth.numberxd.base2t,"+
|
"love.distributedrebirth.numberxd.base2t,"+
|
||||||
"love.distributedrebirth.numberxd.base2t.part,"+
|
"love.distributedrebirth.numberxd.base2t.part,"+
|
||||||
|
"love.distributedrebirth.numberxd.base2t.part.ii,"+
|
||||||
"love.distributedrebirth.numberxd.base2t.type,"+
|
"love.distributedrebirth.numberxd.base2t.type,"+
|
||||||
"love.distributedrebirth.numberxd.base2t.typexl,"+
|
"love.distributedrebirth.numberxd.base2t.typexl,"+
|
||||||
"love.distributedrebirth.numberxd.unicode,"+
|
"love.distributedrebirth.numberxd.unicode,"+
|
||||||
|
|
|
@ -169,7 +169,7 @@ public class GDXAppVrGem4Activator implements BundleActivator {
|
||||||
StringUnicode exportName = bassbone.toBBC().NOISE_OF(BãßBȍőnExport響ᴼᶠ.class).artifact();
|
StringUnicode exportName = bassbone.toBBC().NOISE_OF(BãßBȍőnExport響ᴼᶠ.class).artifact();
|
||||||
StringUnicode copyright = bassbone.toBBC().NOISE_OF(BãßBȍőnAuthor響ᴼᶠ.class).kopieërRecht();
|
StringUnicode copyright = bassbone.toBBC().NOISE_OF(BãßBȍőnAuthor響ᴼᶠ.class).kopieërRecht();
|
||||||
bootScreen.bootLine("Lock: "+exportName+" since: "+copyright);
|
bootScreen.bootLine("Lock: "+exportName+" since: "+copyright);
|
||||||
Bãß.石棺ʸᴰ.ײاللهזأَكْبَرײ.墳ᴸᵒᶜᵏ(bassbone);
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.墳ᴸᵒᶜᵏ(bassbone);
|
||||||
}
|
}
|
||||||
bootScreen.bootLine("BãßBȍőnʸᴰ init done.");
|
bootScreen.bootLine("BãßBȍőnʸᴰ init done.");
|
||||||
}
|
}
|
||||||
|
|
1
pom.xml
1
pom.xml
|
@ -144,6 +144,7 @@
|
||||||
love.distributedrebirth.numberxd,
|
love.distributedrebirth.numberxd,
|
||||||
love.distributedrebirth.numberxd.base2t,
|
love.distributedrebirth.numberxd.base2t,
|
||||||
love.distributedrebirth.numberxd.base2t.part,
|
love.distributedrebirth.numberxd.base2t.part,
|
||||||
|
love.distributedrebirth.numberxd.base2t.part.ii,
|
||||||
love.distributedrebirth.numberxd.base2t.type,
|
love.distributedrebirth.numberxd.base2t.type,
|
||||||
love.distributedrebirth.numberxd.base2t.typexl,
|
love.distributedrebirth.numberxd.base2t.typexl,
|
||||||
love.distributedrebirth.numberxd.unicode,
|
love.distributedrebirth.numberxd.unicode,
|
||||||
|
|
Loading…
Reference in a new issue