Made BãßBȍőnʸᴰ interface tree constant
This commit is contained in:
parent
ab79b0b65a
commit
73a3e82eb0
39 changed files with 184 additions and 186 deletions
|
|
@ -11,18 +11,21 @@ import love.distributedrebirth.bassboonyd.clazz.BãßBȍőnAuthor注;
|
|||
import love.distributedrebirth.bassboonyd.sinit.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||
|
||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BãßBȍőn<T, K extends BãßBȍőnCoffinNailʸᴰ> {
|
||||
|
||||
public interface Bãß {
|
||||
|
||||
static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
private static final Map<Object, BãßBȍőnCoffinʸᴰ<?>> GRAVE_YARD = new WeakHashMap<>(); // TODO: test bean gc
|
||||
private static final ReadWriteLock FUNERAL = new ReentrantReadWriteLock();
|
||||
protected static final Map<Object, BãßBȍőnCoffinʸᴰ<?>> GRAVE_YARD = new WeakHashMap<>(); // TODO: test bean gc
|
||||
protected static final ReadWriteLock FUNERAL = new ReentrantReadWriteLock();
|
||||
|
||||
private Ꝑŕḯṿª₮ḕ() {
|
||||
}
|
||||
|
||||
@SafeVarargs
|
||||
public static <T, K extends BãßBȍőnCoffinNailʸᴰ> void 仙ᴵᴺᴵᵀ(BãßBȍőn<T,K> boon, Consumer<BãßBȍőnCoffinOpenʸᴰ<K>>...coffinFillers) {
|
||||
public static <T, K extends BãßBȍőnCoffinNailʸᴰ> void 仙ᴵᴺᴵᵀ(BãßBȍőnʸᴰ<T,K> boon, Consumer<BãßBȍőnCoffinOpenʸᴰ<K>>...coffinFillers) {
|
||||
BãßBȍőnPhaseLoaderʸᴰ.CAST_BONE_MAGIC(boon, coffinFillers);
|
||||
}
|
||||
|
||||
public static <T, K extends BãßBȍőnCoffinNailʸᴰ> void 鎖ᴳᴿᴬⱽᴱ(BãßBȍőn<T,K> boon) {
|
||||
public static <T, K extends BãßBȍőnCoffinNailʸᴰ> void 鎖ᴳᴿᴬⱽᴱ(BãßBȍőnʸᴰ<T,K> boon) {
|
||||
BãßBȍőnCoffinʸᴰ<K> coffin = (BãßBȍőnCoffinʸᴰ<K>)boon.toBBC();
|
||||
if (!(coffin instanceof BãßBȍőnCoffinOpenʸᴰ)) {
|
||||
return; // already closed
|
||||
|
|
@ -50,31 +53,22 @@ public interface BãßBȍőn<T, K extends BãßBȍőnCoffinNailʸᴰ> {
|
|||
// }
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
default T toBBCHeadStoneʸᴰ() {
|
||||
return (T) this;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
default BãßBȍőnCoffinʸᴰ<K> toBBC() {
|
||||
BãßBȍőnCoffinʸᴰ<K> zombieCoffin = null;
|
||||
Lock bibleReader = Ꝑŕḯṿª₮ḕ.FUNERAL.readLock(); // Can't force enum only, thus no jvm safety
|
||||
bibleReader.lock();
|
||||
try {
|
||||
zombieCoffin = (BãßBȍőnCoffinʸᴰ<K>) Ꝑŕḯṿª₮ḕ.GRAVE_YARD.get(toBBCHeadStoneʸᴰ());
|
||||
} finally {
|
||||
bibleReader.unlock();
|
||||
static class Cỗᶇṧⱦᶏꬼȶʂ {
|
||||
public static final String STR_VALUES = "values";
|
||||
public static final String STR_NAME = "name";
|
||||
public static final String STR_TYPE = "type";
|
||||
public static final String STR_DOT = ".";
|
||||
public static final String STR_EMPTY = "";
|
||||
public static final String STR_SPACE = " ";
|
||||
public static final String STR_COMMA = ",";
|
||||
public static final String STR_COLON = ":";
|
||||
public static final String STR_IS = "=";
|
||||
|
||||
public static final int INT_ZERO = 0;
|
||||
public static final int INT_ONE = 1;
|
||||
public static final int INT_TEN = 10;
|
||||
|
||||
private Cỗᶇṧⱦᶏꬼȶʂ() {
|
||||
}
|
||||
if (zombieCoffin == null) {
|
||||
Lock shemiraWriter = Ꝑŕḯṿª₮ḕ.FUNERAL.writeLock();
|
||||
shemiraWriter.lock();
|
||||
try {
|
||||
zombieCoffin = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
Ꝑŕḯṿª₮ḕ.GRAVE_YARD.put(toBBCHeadStoneʸᴰ(), zombieCoffin);
|
||||
} finally {
|
||||
shemiraWriter.unlock();
|
||||
}
|
||||
}
|
||||
return zombieCoffin;
|
||||
}
|
||||
}
|
||||
|
|
@ -22,7 +22,7 @@ public interface BãßBȍőnCoffinOpenʸᴰ<T extends BãßBȍőnCoffinNailʸᴰ
|
|||
PUT_OBJ(key, new ArrayList<>());
|
||||
}
|
||||
|
||||
static <X, K extends BãßBȍőnCoffinNailʸᴰ> BãßBȍőnCoffinOpenʸᴰ<K> FROM(BãßBȍőn<X,K> boon) {
|
||||
static <X, K extends BãßBȍőnCoffinNailʸᴰ> BãßBȍőnCoffinOpenʸᴰ<K> FROM(BãßBȍőnʸᴰ<X,K> boon) {
|
||||
return FROM(boon.toBBC());
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,31 +0,0 @@
|
|||
package love.distributedrebirth.bassboonyd;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.clazz.BãßBȍőnAuthor注;
|
||||
|
||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||
public class BãßBȍőnConstantsʸᴰ {
|
||||
|
||||
public static final String STR_VALUES = "values";
|
||||
|
||||
public static final String STR_NAME = "name";
|
||||
|
||||
public static final String STR_TYPE = "type";
|
||||
|
||||
public static final String STR_DOT = ".";
|
||||
|
||||
public static final String STR_EMPTY = "";
|
||||
|
||||
public static final String STR_SPACE = " ";
|
||||
|
||||
public static final String STR_COMMA = ",";
|
||||
|
||||
public static final String STR_COLON = ":";
|
||||
|
||||
public static final String STR_IS = "=";
|
||||
|
||||
public static final int INT_ZERO = 0;
|
||||
|
||||
public static final int INT_ONE = 1;
|
||||
|
||||
public static final int INT_TEN = 10;
|
||||
}
|
||||
|
|
@ -8,14 +8,14 @@ import love.distributedrebirth.bassboonyd.sinit.BãßBȍőnꝐŕḯṿª₮ḕPh
|
|||
|
||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnInfo注(purpose = "phase barriers are just scanned markers thus extensible by injection of an order number")
|
||||
public interface BãßBȍőnPhaseBarrierʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends BãßBȍőn<T, K> {
|
||||
public interface BãßBȍőnPhaseBarrierʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends BãßBȍőnʸᴰ<T, K> {
|
||||
|
||||
public static class שְׁלֹמֹה {
|
||||
// default internal framework boon phases
|
||||
protected static final int BOON_VOID = BãßBȍőnConstantsʸᴰ.INT_ZERO;
|
||||
protected static final int BOON_BERESHIT = BOON_VOID + BãßBȍőnConstantsʸᴰ.INT_ONE;
|
||||
protected static final int BOON_LAW = BOON_BERESHIT * BãßBȍőnConstantsʸᴰ.INT_TEN;
|
||||
protected static final int BOON_MARRIAGE = BOON_LAW + BãßBȍőnConstantsʸᴰ.INT_ONE;
|
||||
protected static final int BOON_VOID = Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ZERO;
|
||||
protected static final int BOON_BERESHIT = BOON_VOID + Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ONE;
|
||||
protected static final int BOON_LAW = BOON_BERESHIT * Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_TEN;
|
||||
protected static final int BOON_MARRIAGE = BOON_LAW + Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ONE;
|
||||
// default external implementation boon phases
|
||||
protected static final int LIFE_QUADRANT_仙 = 00+00+00+1+2+3+4+5+6+7+8+9;
|
||||
protected static final int LIFE_QUADRANT_上 = 10+11+12+13+14+15+16+17+18;
|
||||
|
|
@ -28,7 +28,7 @@ public interface BãßBȍőnPhaseBarrierʸᴰ<T, K extends BãßBȍőnCoffinNail
|
|||
public static class βrahmanBoonVoid implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {})
|
||||
private static void initPhase(BãßBȍőn<?,?> boon) {
|
||||
private static void initPhase(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -36,7 +36,7 @@ public interface BãßBȍőnPhaseBarrierʸᴰ<T, K extends BãßBȍőnCoffinNail
|
|||
public static class βrahmanBoonBereshit implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {})
|
||||
private static void initPhase(BãßBȍőn<?,?> boon) {
|
||||
private static void initPhase(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -44,7 +44,7 @@ public interface BãßBȍőnPhaseBarrierʸᴰ<T, K extends BãßBȍőnCoffinNail
|
|||
public static class βrahmanBoonLaw implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {})
|
||||
private static void initPhase(BãßBȍőn<?,?> boon) {
|
||||
private static void initPhase(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -52,7 +52,7 @@ public interface BãßBȍőnPhaseBarrierʸᴰ<T, K extends BãßBȍőnCoffinNail
|
|||
public static class βrahmanBoonMarriage implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {})
|
||||
private static void initPhase(BãßBȍőn<?,?> boon) {
|
||||
private static void initPhase(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -60,7 +60,7 @@ public interface BãßBȍőnPhaseBarrierʸᴰ<T, K extends BãßBȍőnCoffinNail
|
|||
public static class βrahmanLifeQuadrant仙 implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {})
|
||||
private static void initPhase(BãßBȍőn<?,?> boon) {
|
||||
private static void initPhase(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -68,7 +68,7 @@ public interface BãßBȍőnPhaseBarrierʸᴰ<T, K extends BãßBȍőnCoffinNail
|
|||
public static class βrahmanLifeQuadrant上 implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {})
|
||||
private static void initPhase(BãßBȍőn<?,?> boon) {
|
||||
private static void initPhase(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -76,7 +76,7 @@ public interface BãßBȍőnPhaseBarrierʸᴰ<T, K extends BãßBȍőnCoffinNail
|
|||
public static class βrahmanLifeQuadrant主 implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {})
|
||||
private static void initPhase(BãßBȍőn<?,?> boon) {
|
||||
private static void initPhase(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -84,7 +84,7 @@ public interface BãßBȍőnPhaseBarrierʸᴰ<T, K extends BãßBȍőnCoffinNail
|
|||
public static class βrahmanLifeQuadrant天 implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {})
|
||||
private static void initPhase(BãßBȍőn<?,?> boon) {
|
||||
private static void initPhase(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -92,7 +92,7 @@ public interface BãßBȍőnPhaseBarrierʸᴰ<T, K extends BãßBȍőnCoffinNail
|
|||
public static class βrahmanLifeInit implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {})
|
||||
private static void initPhase(BãßBȍőn<?,?> boon) {
|
||||
private static void initPhase(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ public final class BãßBȍőnPhaseLoaderʸᴰ {
|
|||
private static final Set<Class<?>> SCANNED = new LinkedHashSet<>();
|
||||
|
||||
@SafeVarargs
|
||||
protected static <T, K extends BãßBȍőnCoffinNailʸᴰ> void CAST_BONE_MAGIC(BãßBȍőn<T,K> boon, Consumer<BãßBȍőnCoffinOpenʸᴰ<K>>...coffinFillers) {
|
||||
protected static <T, K extends BãßBȍőnCoffinNailʸᴰ> void CAST_BONE_MAGIC(BãßBȍőnʸᴰ<T,K> boon, Consumer<BãßBȍőnCoffinOpenʸᴰ<K>>...coffinFillers) {
|
||||
BãßBȍőnCoffinOpenʸᴰ<K> bbc = BãßBȍőnCoffinOpenʸᴰ.FROM(boon);
|
||||
try {
|
||||
for (Consumer<BãßBȍőnCoffinOpenʸᴰ<K>> embalmFactory:coffinFillers) {
|
||||
|
|
@ -53,7 +53,7 @@ public final class BãßBȍőnPhaseLoaderʸᴰ {
|
|||
}
|
||||
}
|
||||
|
||||
private static <T, K extends BãßBȍőnCoffinNailʸᴰ> void initSpiderEggs(BãßBȍőn<T,K> boon) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||
private static <T, K extends BãßBȍőnCoffinNailʸᴰ> void initSpiderEggs(BãßBȍőnʸᴰ<T,K> boon) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||
for (Class<?> interfaceClass:walkInterfaces(boon.getClass(), new LinkedHashSet<>())) {
|
||||
for (Class<?> declaredClass:((Class<?>) interfaceClass).getDeclaredClasses()) {
|
||||
initSpiderEggRegistrate(boon, declaredClass);
|
||||
|
|
@ -64,7 +64,7 @@ public final class BãßBȍőnPhaseLoaderʸᴰ {
|
|||
}
|
||||
}
|
||||
|
||||
private static <T, K extends BãßBȍőnCoffinNailʸᴰ> void initSpiderEggRegistrate(BãßBȍőn<T,K> boon, Class<?> declaredClass) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||
private static <T, K extends BãßBȍőnCoffinNailʸᴰ> void initSpiderEggRegistrate(BãßBȍőnʸᴰ<T,K> boon, Class<?> declaredClass) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||
if (!BãßBȍőnꝐŕḯṿª₮ḕ.class.isAssignableFrom(declaredClass)) {
|
||||
return;
|
||||
}
|
||||
|
|
@ -93,7 +93,7 @@ public final class BãßBȍőnPhaseLoaderʸᴰ {
|
|||
}
|
||||
}
|
||||
|
||||
private static <T, K extends BãßBȍőnCoffinNailʸᴰ> void initPrivate(BãßBȍőn<T,K> boon) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||
private static <T, K extends BãßBȍőnCoffinNailʸᴰ> void initPrivate(BãßBȍőnʸᴰ<T,K> boon) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||
|
||||
//System.out.println("INIT "+boon.getClass().getName());
|
||||
List<InitPhase> boonInits = new ArrayList<>();
|
||||
|
|
@ -152,7 +152,7 @@ public final class BãßBȍőnPhaseLoaderʸᴰ {
|
|||
m.invoke(null);
|
||||
continue;
|
||||
}
|
||||
if (para.length == 1 && BãßBȍőn.class.isAssignableFrom(para[0])) {
|
||||
if (para.length == 1 && BãßBȍőnʸᴰ.class.isAssignableFrom(para[0])) {
|
||||
m.invoke(null, boon);
|
||||
continue;
|
||||
}
|
||||
|
|
@ -160,7 +160,7 @@ public final class BãßBȍőnPhaseLoaderʸᴰ {
|
|||
}
|
||||
}
|
||||
|
||||
private static <T, K extends BãßBȍőnCoffinNailʸᴰ> void walkPrivate(BãßBȍőn<T,K> boon, Consumer<Class<?>> runPrivate) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||
private static <T, K extends BãßBȍőnCoffinNailʸᴰ> void walkPrivate(BãßBȍőnʸᴰ<T,K> boon, Consumer<Class<?>> runPrivate) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException {
|
||||
for (Class<?> interfaceClass:walkInterfaces(boon.getClass(), new LinkedHashSet<>())) {
|
||||
for (Class<?> declaredClass:interfaceClass.getDeclaredClasses()) {
|
||||
if (!BãßBȍőnꝐŕḯṿª₮ḕ.class.isAssignableFrom(declaredClass)) {
|
||||
|
|
|
|||
|
|
@ -44,13 +44,13 @@ public class BãßBȍőnSpiderʸᴰ {
|
|||
if (para.length == 0) {
|
||||
valid = true;
|
||||
}
|
||||
if (para.length == 1 && BãßBȍőn.class.isAssignableFrom(para[0])) {
|
||||
if (para.length == 1 && BãßBȍőnʸᴰ.class.isAssignableFrom(para[0])) {
|
||||
valid = true;
|
||||
}
|
||||
if (para.length == 2 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1])) {
|
||||
if (para.length == 2 && BãßBȍőnʸᴰ.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1])) {
|
||||
valid = true;
|
||||
}
|
||||
if (para.length == 3 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1]) && String.class.isAssignableFrom(para[2])) {
|
||||
if (para.length == 3 && BãßBȍőnʸᴰ.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1]) && String.class.isAssignableFrom(para[2])) {
|
||||
valid = true;
|
||||
}
|
||||
if (!valid) {
|
||||
|
|
@ -64,13 +64,13 @@ public class BãßBȍőnSpiderʸᴰ {
|
|||
if (para.length == 0) {
|
||||
return m.invoke(null);
|
||||
}
|
||||
if (para.length == 1 && BãßBȍőn.class.isAssignableFrom(para[0])) {
|
||||
if (para.length == 1 && BãßBȍőnʸᴰ.class.isAssignableFrom(para[0])) {
|
||||
return m.invoke(null, boon);
|
||||
}
|
||||
if (para.length == 2 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1])) {
|
||||
if (para.length == 2 && BãßBȍőnʸᴰ.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1])) {
|
||||
return m.invoke(null, boon, name);
|
||||
}
|
||||
if (para.length == 3 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1]) && String.class.isAssignableFrom(para[2])) {
|
||||
if (para.length == 3 && BãßBȍőnʸᴰ.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1]) && String.class.isAssignableFrom(para[2])) {
|
||||
return m.invoke(null, boon, name, description);
|
||||
}
|
||||
throw new IllegalStateException("Unknown method parameters on: "+m.getDeclaringClass().getSimpleName()+"."+m.toGenericString());
|
||||
|
|
@ -79,10 +79,10 @@ public class BãßBȍőnSpiderʸᴰ {
|
|||
@Override
|
||||
public boolean isNamed() {
|
||||
Class<?>[] para = m.getParameterTypes();
|
||||
if (para.length == 2 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1])) {
|
||||
if (para.length == 2 && BãßBȍőnʸᴰ.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1])) {
|
||||
return true;
|
||||
}
|
||||
if (para.length == 3 && BãßBȍőn.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1]) && String.class.isAssignableFrom(para[2])) {
|
||||
if (para.length == 3 && BãßBȍőnʸᴰ.class.isAssignableFrom(para[0]) && String.class.isAssignableFrom(para[1]) && String.class.isAssignableFrom(para[2])) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
|
|
|||
|
|
@ -0,0 +1,37 @@
|
|||
package love.distributedrebirth.bassboonyd;
|
||||
|
||||
import java.util.concurrent.locks.Lock;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.clazz.BãßBȍőnAuthor注;
|
||||
|
||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BãßBȍőnʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> {
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
default T toBBCHeadStoneʸᴰ() {
|
||||
return (T) this;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
default BãßBȍőnCoffinʸᴰ<K> toBBC() {
|
||||
BãßBȍőnCoffinʸᴰ<K> zombieCoffin = null;
|
||||
Lock bibleReader = Bãß.Ꝑŕḯṿª₮ḕ.FUNERAL.readLock(); // Can't force enum only, thus no jvm safety
|
||||
bibleReader.lock();
|
||||
try {
|
||||
zombieCoffin = (BãßBȍőnCoffinʸᴰ<K>) Bãß.Ꝑŕḯṿª₮ḕ.GRAVE_YARD.get(toBBCHeadStoneʸᴰ());
|
||||
} finally {
|
||||
bibleReader.unlock();
|
||||
}
|
||||
if (zombieCoffin == null) {
|
||||
Lock shemiraWriter = Bãß.Ꝑŕḯṿª₮ḕ.FUNERAL.writeLock();
|
||||
shemiraWriter.lock();
|
||||
try {
|
||||
zombieCoffin = BãßBȍőnCoffinOpenʸᴰ.newInstance();
|
||||
Bãß.Ꝑŕḯṿª₮ḕ.GRAVE_YARD.put(toBBCHeadStoneʸᴰ(), zombieCoffin);
|
||||
} finally {
|
||||
shemiraWriter.unlock();
|
||||
}
|
||||
}
|
||||
return zombieCoffin;
|
||||
}
|
||||
}
|
||||
|
|
@ -5,8 +5,8 @@ import love.distributedrebirth.bassboonyd.clazz.BãßBȍőnAuthorʸᴰ;
|
|||
import love.distributedrebirth.bassboonyd.clazz.BãßBȍőnInfoʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.clazz.BãßBȍőnPackageʸᴰ;
|
||||
|
||||
public interface DefaultBãßBȍőn<T, K extends BãßBȍőnCoffinNailʸᴰ> extends
|
||||
BãßBȍőn<T,K>,
|
||||
public interface DefaultBãßBȍőnʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends
|
||||
BãßBȍőnʸᴰ<T,K>,
|
||||
BãßBȍőnPhaseBarrierʸᴰ<T,K>,
|
||||
BãßBȍőnInfoʸᴰ<T,K>,
|
||||
BãßBȍőnAuthorʸᴰ<T,K>,
|
||||
|
|
@ -3,7 +3,7 @@ package love.distributedrebirth.bassboonyd;
|
|||
import love.distributedrebirth.bassboonyd.clazz.BãßBȍőnAuthor注;
|
||||
|
||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||
public interface DefaultEnumBaseʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends DefaultBãßBȍőn<T, K> {
|
||||
public interface DefaultEnumBaseʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends DefaultBãßBȍőnʸᴰ<T, K> {
|
||||
|
||||
// Bȍőn prefix is for set instance enum methods (called DefaultEnumSetʸᴰ)
|
||||
// Bãß prefix is for single instance enum methods (called DefaultEnumInstanceʸᴰ)
|
||||
|
|
@ -19,7 +19,7 @@ public interface DefaultEnumBaseʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> e
|
|||
@SuppressWarnings("unchecked")
|
||||
default T[] BãßInstances() {
|
||||
try {
|
||||
Object result = getClass().getMethod(BãßBȍőnConstantsʸᴰ.STR_VALUES).invoke(null);
|
||||
Object result = getClass().getMethod(Bãß.Cỗᶇṧⱦᶏꬼȶʂ.STR_VALUES).invoke(null);
|
||||
return (T[]) result;
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
|
|
|
|||
|
|
@ -6,6 +6,6 @@ import love.distributedrebirth.bassboonyd.clazz.BãßBȍőnAuthor注;
|
|||
public interface DefaultEnumInstanceʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends DefaultEnumBaseʸᴰ<T,K> {
|
||||
|
||||
default T BãßInstance() {
|
||||
return BãßInstances()[BãßBȍőnConstantsʸᴰ.INT_ZERO];
|
||||
return BãßInstances()[Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ZERO];
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ public interface DefaultEnumSetʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> ex
|
|||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注()
|
||||
private static void init(DefaultEnumSetʸᴰ<?,?> boon) {
|
||||
boon.toBBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_RANG_TEL_EEN, boon.BȍőnRangTelNul() + BãßBȍőnConstantsʸᴰ.INT_ONE);
|
||||
boon.toBBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_RANG_TEL_EEN, boon.BȍőnRangTelNul() + Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ONE);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -41,30 +41,30 @@ public interface DefaultEnumSetʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> ex
|
|||
|
||||
default T BȍőnVolgende() {
|
||||
T[] values = BãßInstances();
|
||||
int resultIndex = BãßBȍőnConstantsʸᴰ.INT_ZERO;
|
||||
for (int i=BãßBȍőnConstantsʸᴰ.INT_ZERO;i<values.length;i++) {
|
||||
int resultIndex = Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ZERO;
|
||||
for (int i=Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ZERO;i<values.length;i++) {
|
||||
if (this == values[i]) {
|
||||
resultIndex = i + BãßBȍőnConstantsʸᴰ.INT_ONE;
|
||||
resultIndex = i + Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ONE;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (resultIndex == values.length) {
|
||||
resultIndex = BãßBȍőnConstantsʸᴰ.INT_ZERO;
|
||||
resultIndex = Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ZERO;
|
||||
}
|
||||
return values[resultIndex];
|
||||
}
|
||||
|
||||
default T BȍőnVorige() {
|
||||
T[] values = BãßInstances();
|
||||
int resultIndex = BãßBȍőnConstantsʸᴰ.INT_ZERO;
|
||||
for (int i=BãßBȍőnConstantsʸᴰ.INT_ZERO;i<values.length;i++) {
|
||||
int resultIndex = Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ZERO;
|
||||
for (int i=Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ZERO;i<values.length;i++) {
|
||||
if (this == values[i]) {
|
||||
resultIndex = i - BãßBȍőnConstantsʸᴰ.INT_ONE;
|
||||
resultIndex = i - Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ONE;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (resultIndex < BãßBȍőnConstantsʸᴰ.INT_ZERO) {
|
||||
resultIndex = values.length - BãßBȍőnConstantsʸᴰ.INT_ONE;
|
||||
if (resultIndex < Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ZERO) {
|
||||
resultIndex = values.length - Bãß.Cỗᶇṧⱦᶏꬼȶʂ.INT_ONE;
|
||||
}
|
||||
return values[resultIndex];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ package love.distributedrebirth.bassboonyd.clazz;
|
|||
import java.lang.annotation.Annotation;
|
||||
import java.util.LinkedHashSet;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőn;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinNailʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnPhaseLoaderʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnPhaseBarrierʸᴰ;
|
||||
|
|
@ -11,12 +11,12 @@ import love.distributedrebirth.bassboonyd.sinit.BãßBȍőnꝐŕḯṿª₮ḕ;
|
|||
import love.distributedrebirth.bassboonyd.sinit.BãßBȍőnꝐŕḯṿª₮ḕInit注;
|
||||
|
||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||
public interface BãßBȍőnAnnotationʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends BãßBȍőn<T, K> {
|
||||
public interface BãßBȍőnAnnotationʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends BãßBȍőnʸᴰ<T, K> {
|
||||
|
||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {BãßBȍőnPhaseBarrierʸᴰ.βrahmanBoonLaw.class})
|
||||
private static void init(BãßBȍőn<?,?> boon) {
|
||||
private static void init(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
for (Class<?> interfaceClass:BãßBȍőnPhaseLoaderʸᴰ.walkInterfaces(boon.getClass(), new LinkedHashSet<>())) {
|
||||
BãßBȍőnAnnotation注 anno = interfaceClass.getAnnotation(BãßBȍőnAnnotation注.class);
|
||||
if (anno == null) {
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
package love.distributedrebirth.bassboonyd.clazz;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőn;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinNailʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnPhaseBarrierʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.sinit.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||
|
|
@ -8,7 +8,7 @@ import love.distributedrebirth.bassboonyd.sinit.BãßBȍőnꝐŕḯṿª₮ḕIn
|
|||
|
||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnAnnotation注(optional = {BãßBȍőnAuthor注.class})
|
||||
public interface BãßBȍőnAuthorʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends BãßBȍőn<T,K> {
|
||||
public interface BãßBȍőnAuthorʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends BãßBȍőnʸᴰ<T,K> {
|
||||
|
||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
private static final String GHOST_KEY_AUTHOR_NAME = "authorName";
|
||||
|
|
@ -17,7 +17,7 @@ public interface BãßBȍőnAuthorʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ>
|
|||
private static final String DEFAULT_AUTHOR_COPYRIGHT = "©Δ∞ 仙上主天";
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {BãßBȍőnPhaseBarrierʸᴰ.βrahmanBoonLaw.class})
|
||||
private static void init(BãßBȍőn<?,?> boon) {
|
||||
private static void init(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
BãßBȍőnAuthor注 anno = boon.getClass().getAnnotation(BãßBȍőnAuthor注.class);
|
||||
boon.toBBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_AUTHOR_NAME, anno!=null?anno.name():DEFAULT_AUTHOR_NAME);
|
||||
boon.toBBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_AUTHOR_COPYRIGHT, anno!=null?anno.copyright():DEFAULT_AUTHOR_COPYRIGHT);
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
package love.distributedrebirth.bassboonyd.clazz;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőn;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinNailʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnPhaseBarrierʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.sinit.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||
|
|
@ -8,7 +8,7 @@ import love.distributedrebirth.bassboonyd.sinit.BãßBȍőnꝐŕḯṿª₮ḕIn
|
|||
|
||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnAnnotation注(optional = {BãßBȍőnInfo注.class})
|
||||
public interface BãßBȍőnInfoʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends BãßBȍőn<T, K> {
|
||||
public interface BãßBȍőnInfoʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends BãßBȍőnʸᴰ<T, K> {
|
||||
|
||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
private static final String GHOST_KEY_BEAN_NAME = "beanName";
|
||||
|
|
@ -16,7 +16,7 @@ public interface BãßBȍőnInfoʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> e
|
|||
private static final String DEFAULT_BEAN_PURPOSE = "Undefined";
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {BãßBȍőnPhaseBarrierʸᴰ.βrahmanBoonLaw.class})
|
||||
private static void init(BãßBȍőn<?,?> boon) {
|
||||
private static void init(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
BãßBȍőnInfo注 anno = boon.getClass().getAnnotation(BãßBȍőnInfo注.class);
|
||||
String beanName = boon.getClass().getSimpleName();
|
||||
String beanPurpose = DEFAULT_BEAN_PURPOSE;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
package love.distributedrebirth.bassboonyd.clazz;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőn;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinNailʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnPhaseBarrierʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.sinit.BãßBȍőnꝐŕḯṿª₮ḕ;
|
||||
|
|
@ -8,13 +8,13 @@ import love.distributedrebirth.bassboonyd.sinit.BãßBȍőnꝐŕḯṿª₮ḕIn
|
|||
|
||||
@BãßBȍőnAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||
@BãßBȍőnAnnotation注(optional = {BãßBȍőnPackage注.class})
|
||||
public interface BãßBȍőnPackageʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends BãßBȍőn<T, K> {
|
||||
public interface BãßBȍőnPackageʸᴰ<T, K extends BãßBȍőnCoffinNailʸᴰ> extends BãßBȍőnʸᴰ<T, K> {
|
||||
|
||||
public static class Ꝑŕḯṿª₮ḕ implements BãßBȍőnꝐŕḯṿª₮ḕ {
|
||||
private static final String GHOST_KEY_PACKAGE_NAME = "packageName";
|
||||
|
||||
@BãßBȍőnꝐŕḯṿª₮ḕInit注(dependencies = {BãßBȍőnPhaseBarrierʸᴰ.βrahmanBoonLaw.class})
|
||||
private static void init(BãßBȍőn<?,?> boon) {
|
||||
private static void init(BãßBȍőnʸᴰ<?,?> boon) {
|
||||
BãßBȍőnPackage注 anno = boon.getClass().getAnnotation(BãßBȍőnPackage注.class);
|
||||
boon.toBBC().UNHOLY(Ꝑŕḯṿª₮ḕ.class).PUT_GHOST(GHOST_KEY_PACKAGE_NAME, anno!=null?anno.name():boon.getClass().getPackage().getName());
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import javax.management.MBeanServer;
|
|||
import javax.management.ObjectName;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinNailʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnConstantsʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.Bãß;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnPhaseBarrierʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.DefaultEnumInstanceʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.clazz.BãßBȍőnAuthor注;
|
||||
|
|
@ -23,9 +23,9 @@ public interface DefaultEnumInstanceᴶᴹˣ<T,K extends BãßBȍőnCoffinNailʸ
|
|||
try {
|
||||
StringBuilder name = new StringBuilder();
|
||||
name.append(boon.BãßPackageNaam());
|
||||
name.append(BãßBȍőnConstantsʸᴰ.STR_COLON);
|
||||
name.append(BãßBȍőnConstantsʸᴰ.STR_TYPE);
|
||||
name.append(BãßBȍőnConstantsʸᴰ.STR_IS);
|
||||
name.append(Bãß.Cỗᶇṧⱦᶏꬼȶʂ.STR_COLON);
|
||||
name.append(Bãß.Cỗᶇṧⱦᶏꬼȶʂ.STR_TYPE);
|
||||
name.append(Bãß.Cỗᶇṧⱦᶏꬼȶʂ.STR_IS);
|
||||
name.append(boon.BãßInfoNaam());
|
||||
|
||||
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import javax.management.MBeanServer;
|
|||
import javax.management.ObjectName;
|
||||
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnCoffinNailʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnConstantsʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.Bãß;
|
||||
import love.distributedrebirth.bassboonyd.BãßBȍőnPhaseBarrierʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.DefaultEnumSetʸᴰ;
|
||||
import love.distributedrebirth.bassboonyd.clazz.BãßBȍőnAuthor注;
|
||||
|
|
@ -23,13 +23,13 @@ public interface DefaultEnumSetᴶᴹˣ<T,K extends BãßBȍőnCoffinNailʸᴰ>
|
|||
try {
|
||||
StringBuilder name = new StringBuilder();
|
||||
name.append(boon.BãßPackageNaam());
|
||||
name.append(BãßBȍőnConstantsʸᴰ.STR_COLON);
|
||||
name.append(BãßBȍőnConstantsʸᴰ.STR_TYPE);
|
||||
name.append(BãßBȍőnConstantsʸᴰ.STR_IS);
|
||||
name.append(Bãß.Cỗᶇṧⱦᶏꬼȶʂ.STR_COLON);
|
||||
name.append(Bãß.Cỗᶇṧⱦᶏꬼȶʂ.STR_TYPE);
|
||||
name.append(Bãß.Cỗᶇṧⱦᶏꬼȶʂ.STR_IS);
|
||||
name.append(boon.BãßInfoNaam());
|
||||
name.append(BãßBȍőnConstantsʸᴰ.STR_COMMA);
|
||||
name.append(BãßBȍőnConstantsʸᴰ.STR_NAME);
|
||||
name.append(BãßBȍőnConstantsʸᴰ.STR_IS);
|
||||
name.append(Bãß.Cỗᶇṧⱦᶏꬼȶʂ.STR_COMMA);
|
||||
name.append(Bãß.Cỗᶇṧⱦᶏꬼȶʂ.STR_NAME);
|
||||
name.append(Bãß.Cỗᶇṧⱦᶏꬼȶʂ.STR_IS);
|
||||
name.append(boon.BȍőnNaam());
|
||||
|
||||
MBeanServer server = ManagementFactory.getPlatformMBeanServer();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue