DuytsDoc now used generic locale
This commit is contained in:
parent
efc56a04c9
commit
bd01bddbcf
|
@ -12,7 +12,6 @@ import java.util.concurrent.locks.Lock;
|
||||||
import java.util.concurrent.locks.ReadWriteLock;
|
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ȍőnDuytsFlüstern注;
|
|
||||||
import love.distributedrebirth.bassboon.clazz.BãßBȍőnExport注;
|
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Ꝑŕḯṿª₮ḕ響ᴼᶠ;
|
||||||
|
@ -29,19 +28,26 @@ import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ObjectScopeLimitΔ邪ᙾ;
|
||||||
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.Runnableբ;
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.Runnableբ;
|
||||||
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.BabelLocalizer邪ᙾ;
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.BabelLocalizer邪ᙾ;
|
||||||
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
|
||||||
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocConstructor注;
|
||||||
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocMethod注;
|
||||||
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocType注;
|
||||||
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDoc注;
|
||||||
import ᴶᐩᐩ.ᔿᐤᑊᐣ.ᒢᔿᕽ.CounterGuageᴶᴹˣ;
|
import ᴶᐩᐩ.ᔿᐤᑊᐣ.ᒢᔿᕽ.CounterGuageᴶᴹˣ;
|
||||||
import ᴶᐩᐩ.ᔿᐤᑊᐣ.ᣔᒃᣔᒼᓑᔆ.BãßBȍőnAbacusInstanceMBeanʸᴰ;
|
import ᴶᐩᐩ.ᔿᐤᑊᐣ.ᣔᒃᣔᒼᓑᔆ.BãßBȍőnAbacusInstanceMBeanʸᴰ;
|
||||||
|
|
||||||
/**
|
|
||||||
* Runtime for static bass noise ௸.
|
|
||||||
*/
|
|
||||||
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@DuytsDocType注(babel = {
|
||||||
|
@DuytsDoc注(locale= "en", purpose = "Runtime for static bass noise ௸.."),
|
||||||
|
@DuytsDoc注(locale= "zh", code = "低音", purpose = "來自天堂的靜態低音噪音的運行時間"),
|
||||||
|
@DuytsDoc注(locale= "hi", code = "बास", purpose = "स्वर्ग से स्थिर बास शोर के लिए रनटाइम")
|
||||||
|
})
|
||||||
public interface Bãß {
|
public interface Bãß {
|
||||||
|
|
||||||
/**
|
@DuytsDocType注(babel = {
|
||||||
* Sarcophagus aggregates Y-Dimensions.
|
@DuytsDoc注(locale= "en", code = "lijkenkistʸᴰ", purpose = "Sarcophagus aggregates Y-Dimensions"),
|
||||||
*/
|
@DuytsDoc注(locale= "zh", purpose = "石棺聚合多個維度"),
|
||||||
@BãßBȍőnDuytsFlüstern注(purpose = "Framework startup.")
|
@DuytsDoc注(locale= "hi", code = "पत्थरꣻकीꣻबनीꣻहुईꣻकब्रʸᴰ", purpose = "सरकोफैगस कई आयामों को एकत्रित करता है")
|
||||||
|
})
|
||||||
@BãßBȍőnExport注(group = "love.distributedrebirth.bassboon")
|
@BãßBȍőnExport注(group = "love.distributedrebirth.bassboon")
|
||||||
static enum 石棺ʸᴰ implements BãßBȍőnAbacusInstanceMBeanʸᴰ<石棺ʸᴰ> {
|
static enum 石棺ʸᴰ implements BãßBȍőnAbacusInstanceMBeanʸᴰ<石棺ʸᴰ> {
|
||||||
أَكْبَرײꣻײالله;
|
أَكْبَرײꣻײالله;
|
||||||
|
@ -69,41 +75,51 @@ public interface Bãß {
|
||||||
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.Г̄Ѫӏ = () -> boonCntInit.increment();
|
Bãß.石棺ʸᴰ.أَكْبَرײꣻײالله.Г̄Ѫӏ = () -> boonCntInit.increment();
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
@DuytsDocConstructor注(babel = {
|
||||||
* Sarcophagus is closed for humans.
|
@DuytsDoc注(locale= "en", purpose = "Sarcophagus is closed for humans"),
|
||||||
*/
|
@DuytsDoc注(locale= "zh", purpose = "石棺對人類關閉"),
|
||||||
|
@DuytsDoc注(locale= "hi", purpose = "सरकोफैगस इंसानों के लिए बंद है")
|
||||||
|
})
|
||||||
private 石棺ʸᴰ() {
|
private 石棺ʸᴰ() {
|
||||||
Bãß.характеристики.熱蘭遮城.יזזןיזךױױזזױ = Bãß.ℭỗᶇṧⱦᶏꬼȶʂ.CHAR_ATARI > Bãß.ℭỗᶇṧⱦᶏꬼȶʂ.INT_ZERO;
|
Bãß.характеристики.熱蘭遮城.יזזןיזךױױזזױ = Bãß.ℭỗᶇṧⱦᶏꬼȶʂ.CHAR_ATARI > Bãß.ℭỗᶇṧⱦᶏꬼȶʂ.INT_ZERO;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
@DuytsDocMethod注(babel = {
|
||||||
* RÅ...........Init
|
@DuytsDoc注(locale= "en", code = "boonInit", purpose = "RÅ...........Init"),
|
||||||
*/
|
@DuytsDoc注(locale= "zh", code = "恩惠初始化", purpose = "拉布恩飛行"),
|
||||||
|
@DuytsDoc注(locale= "hi", code = "बूनꣻस्टार्ट", purpose = "रा बून फ्लाइंग")
|
||||||
|
})
|
||||||
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();
|
//boonCntInit.increment();
|
||||||
Г̄Ѫӏ.दौड़ना();
|
Г̄Ѫӏ.दौड़ना();
|
||||||
挖ᵀᵒ(derKnochen).init(derKnochen);
|
挖ᵀᵒ(derKnochen).init(derKnochen);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
@DuytsDocMethod注(babel = {
|
||||||
* Grave Lock
|
@DuytsDoc注(locale= "en", code = "lockGrave", purpose = "Closes the coffin so no new ghosts can enter"),
|
||||||
*/
|
@DuytsDoc注(locale= "zh", code = "墳墓鎖", purpose = "關上棺材,讓新的鬼魂無法進入"),
|
||||||
|
@DuytsDoc注(locale= "hi", code = "कब्रꣻकाꣻताला", purpose = "ताबूत को बंद कर देता है ताकि कोई नया भूत प्रवेश न कर सके")
|
||||||
|
})
|
||||||
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();
|
boonCntLock.increment();
|
||||||
挖ᵀᵒ(derKnochen).lock(derKnochen);
|
挖ᵀᵒ(derKnochen).lock(derKnochen);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
@DuytsDocMethod注(babel = {
|
||||||
* Spider Embryo Add
|
@DuytsDoc注(locale= "en", code = "spiderEmbryoAdd", purpose = "Injection of external spider sperm to mix the dead bones"),
|
||||||
*/
|
@DuytsDoc注(locale= "zh", code = "蜘蛛胚胎添加", purpose = "注射外部蜘蛛精混合死骨"),
|
||||||
|
@DuytsDoc注(locale= "hi", code = "मकड़ीꣻभ्रूणꣻजोड़ें", purpose = "मृत हड्डियों को मिलाने के लिए बाहरी मकड़ी के शुक्राणु का इंजेक्शन")
|
||||||
|
})
|
||||||
public void 蜘蛛胚ᴬᵈᵈ(BãßBȍőnSpiderSperm spinneSperma) {
|
public void 蜘蛛胚ᴬᵈᵈ(BãßBȍőnSpiderSperm spinneSperma) {
|
||||||
bassCntSpiderEmbryos.increment();
|
bassCntSpiderEmbryos.increment();
|
||||||
സ്പൈഡർബീജം.add(spinneSperma);
|
സ്പൈഡർബീജം.add(spinneSperma);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
@DuytsDocMethod注(babel = {
|
||||||
* Coffin Of
|
@DuytsDoc注(locale= "en", code = "coffinOf", purpose = "Gets the coffin from the grave"),
|
||||||
*/
|
@DuytsDoc注(locale= "zh", code = "棺材", purpose = "從墳墓中取出棺材"),
|
||||||
|
@DuytsDoc注(locale= "hi", code = "काꣻताबूत", purpose = "कब्र से ताबूत मिलता है")
|
||||||
|
})
|
||||||
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();
|
bassCntCoffinToGrave.increment();
|
||||||
return 挖ᵀᵒ(derKnochen);
|
return 挖ᵀᵒ(derKnochen);
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
package ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ;
|
package ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ;
|
||||||
|
|
||||||
import java.lang.reflect.InvocationTargetException;
|
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
@ -13,39 +12,36 @@ import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsD
|
||||||
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDoc注;
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDoc注;
|
||||||
|
|
||||||
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@DuytsDocType注(
|
@DuytsDocType注(babel = {
|
||||||
ascii = @DuytsDoc注(purpose = "Base package interface from which a local language extends."),
|
@DuytsDoc注(locale= "en", purpose = "Base package interface from which a local language extends."),
|
||||||
mandarin = @DuytsDoc注(code = "通天塔龸定位器", purpose = "本地語言擴展的基礎包接口"),
|
@DuytsDoc注(locale= "zh", code = "通天塔龸定位器", purpose = "本地語言擴展的基礎包接口"),
|
||||||
hindi = @DuytsDoc注(code = "कोलाहलꣻलोकलाइज़र", purpose = "बेस पैकेज इंटरफ़ेस जिससे एक स्थानीय भाषा का विस्तार होता है")
|
@DuytsDoc注(locale= "hi", code = "कोलाहलꣻलोकलाइज़र", purpose = "बेस पैकेज इंटरफ़ेस जिससे एक स्थानीय भाषा का विस्तार होता है")
|
||||||
)
|
})
|
||||||
public interface BabelLocalizer {
|
public interface BabelLocalizer {
|
||||||
// childface = JVM: only allow direct child members of this to use this interface
|
// childface = JVM: only allow direct child members of this to use this interface
|
||||||
// packface = JVM: only allow this package and subpackage are allowed to use this interface
|
// packface = JVM: only allow this package and subpackage are allowed to use this interface
|
||||||
|
|
||||||
@DuytsDocMethod注(
|
@DuytsDocMethod注(babel = {
|
||||||
ascii = @DuytsDoc注(purpose = "Retrieves the locale information"),
|
@DuytsDoc注(locale= "en", purpose = "Retrieves the locale information"),
|
||||||
mandarin = @DuytsDoc注(code = "至龸通天塔龸定位器龸界面", purpose = "检索语言环境信息"),
|
@DuytsDoc注(locale= "zh", code = "至龸通天塔龸定位器龸界面", purpose = "检索语言环境信息"),
|
||||||
hindi = @DuytsDoc注(code = "बेबेलꣻलोकलाइज़रꣻकेꣻलिएꣻएपीआई", purpose = "स्थानीय जानकारी प्राप्त करता है"),
|
@DuytsDoc注(locale= "hi", code = "बेबेलꣻलोकलाइज़रꣻकेꣻलिएꣻएपीआई", purpose = "स्थानीय जानकारी प्राप्त करता है")
|
||||||
exceptions = {
|
}, exceptions = {
|
||||||
@DuytsDocThrows注(id = "missing_annotation",
|
@DuytsDocThrows注(id = "missing_annotation", babel = {
|
||||||
ascii = "Missing required annotation @BabelLocalizer注 on interface: ",
|
@DuytsDoc注(locale= "en", code = "Missing required annotation @BabelLocalizer注 on interface: "),
|
||||||
hindi = "आवश्यक एनोटेशन गुम है @BabelLocalizer注 इंटरफ़ेस पर",
|
@DuytsDoc注(locale= "zh", code = "缺少必需的註釋 @BabelLocalizer注 在界面上 "),
|
||||||
mandarin = "缺少必需的註釋 @BabelLocalizer注 在界面上 ")
|
@DuytsDoc注(locale= "hi", code = "आवश्यक एनोटेशन गुम है @BabelLocalizer注 इंटरफ़ेस पर")
|
||||||
|
})
|
||||||
})
|
})
|
||||||
default BabelLocalizerᴬᵖᶦ toBabelLocalizerᴬᵖᶦ() {
|
default BabelLocalizerᴬᵖᶦ toBabelLocalizerᴬᵖᶦ() {
|
||||||
Optional<Class<?>> loc = DefaultBȍőnLoader.findInterfaceByAnnotation(getClass(), BabelLocalizer注.class);
|
Optional<Class<?>> loc = DefaultBȍőnLoader.findInterfaceByAnnotation(getClass(), BabelLocalizer注.class);
|
||||||
if (loc.isEmpty()) {
|
if (loc.isEmpty()) {
|
||||||
// NOTE no translated exceptions here because it requires this annotation.
|
|
||||||
throw new RuntimeException(toBabelExceptionMessage("missing_annotation", "ascii", this));
|
throw new RuntimeException(toBabelExceptionMessage("missing_annotation", "ascii", this));
|
||||||
}
|
}
|
||||||
BabelLocalizer注 anno = loc.get().getAnnotation(BabelLocalizer注.class);
|
BabelLocalizer注 anno = loc.get().getAnnotation(BabelLocalizer注.class);
|
||||||
return BabelLocalizerᴬᵖᶦ.Ꝑŕᱜṫèƈ₮ࠄ₫.instanceᴺᵉʷ(anno.name(), new Locale(anno.locale()), anno.target(), anno.metaName());
|
return BabelLocalizerᴬᵖᶦ.Ꝑŕᱜṫèƈ₮ࠄ₫.instanceᴺᵉʷ(anno.name(), new Locale(anno.locale()), anno.target());
|
||||||
}
|
}
|
||||||
|
|
||||||
// @DuytsDocMethod注(
|
// @DuytsDocMethod注(
|
||||||
// ascii = @DuytsDoc注(purpose = "Retrieves the locale information"),
|
|
||||||
// mandarin = @DuytsDoc注(code = "至龸通天塔龸定位器龸界面", purpose = "检索语言环境信息"),
|
|
||||||
// hindi = @DuytsDoc注(code = "बेबेलꣻलोकलाइज़रꣻकेꣻलिएꣻएपीआई", purpose = "स्थानीय जानकारी प्राप्त करता है"),
|
|
||||||
// exceptions = {
|
// exceptions = {
|
||||||
// @DuytsDocThrows注(id = "missing_annotation",
|
// @DuytsDocThrows注(id = "missing_annotation",
|
||||||
// ascii = "Missing required annotation @BabelLocalizer注 on interface: %s",
|
// ascii = "Missing required annotation @BabelLocalizer注 on interface: %s",
|
||||||
|
@ -58,10 +54,10 @@ public interface BabelLocalizer {
|
||||||
|
|
||||||
public static String toBabelExceptionMessage(String exceptionId, BabelLocalizer loc, Object...msgArgs) {
|
public static String toBabelExceptionMessage(String exceptionId, BabelLocalizer loc, Object...msgArgs) {
|
||||||
BabelLocalizerᴬᵖᶦ api = loc.toBabelLocalizerᴬᵖᶦ();
|
BabelLocalizerᴬᵖᶦ api = loc.toBabelLocalizerᴬᵖᶦ();
|
||||||
return toBabelExceptionMessage(api.getMetaName(), exceptionId, msgArgs);
|
return toBabelExceptionMessage(exceptionId, api.getLocale().getLanguage(), msgArgs);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String toBabelExceptionMessage(String exceptionId, String metaName, Object...msgArgs) {
|
public static String toBabelExceptionMessage(String exceptionId, String localeId, Object...msgArgs) {
|
||||||
StackWalker walker = StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE);
|
StackWalker walker = StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE);
|
||||||
StackWalker.StackFrame frame = walker.walk(stream1 -> stream1.skip(1).findFirst().orElse(null));
|
StackWalker.StackFrame frame = walker.walk(stream1 -> stream1.skip(1).findFirst().orElse(null));
|
||||||
if (frame == null) {
|
if (frame == null) {
|
||||||
|
@ -80,15 +76,12 @@ public interface BabelLocalizer {
|
||||||
}
|
}
|
||||||
for (DuytsDocThrows注 error:anno.exceptions()) {
|
for (DuytsDocThrows注 error:anno.exceptions()) {
|
||||||
if (error.id().equals(exceptionId)) {
|
if (error.id().equals(exceptionId)) {
|
||||||
String msg = null;
|
for (DuytsDoc注 duyts:error.babel()) {
|
||||||
try {
|
if (duyts.locale().equals(localeId)) {
|
||||||
Method annoValue = error.getClass().getMethod(metaName);
|
String errorMsg = String.format(duyts.code(), msgArgs);
|
||||||
msg = (String)annoValue.invoke(error);
|
throw new RuntimeException(errorMsg);
|
||||||
} catch (SecurityException | IllegalArgumentException | IllegalAccessException | NoSuchMethodException | InvocationTargetException e) {
|
}
|
||||||
throw new RuntimeException(e);
|
|
||||||
}
|
}
|
||||||
String errorMsg = String.format(msg, msgArgs);
|
|
||||||
throw new RuntimeException(errorMsg);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new RuntimeException("Missing exception id: "+exceptionId+" in @DuytsDocMethod注 on: "+callerMethod);
|
throw new RuntimeException("Missing exception id: "+exceptionId+" in @DuytsDocMethod注 on: "+callerMethod);
|
||||||
|
|
|
@ -14,11 +14,9 @@ public interface BabelLocalizerᴬᵖᶦ {
|
||||||
|
|
||||||
String getTarget();
|
String getTarget();
|
||||||
|
|
||||||
String getMetaName();
|
|
||||||
|
|
||||||
enum Ꝑŕᱜṫèƈ₮ࠄ₫ implements ObjectScopeLimitΔ.ƉěꬵḭȵᶒModifier.Ꝑŕᱜṫèƈ₮ࠄ₫ {
|
enum Ꝑŕᱜṫèƈ₮ࠄ₫ implements ObjectScopeLimitΔ.ƉěꬵḭȵᶒModifier.Ꝑŕᱜṫèƈ₮ࠄ₫ {
|
||||||
;
|
;
|
||||||
protected static BabelLocalizerᴬᵖᶦ instanceᴺᵉʷ(String name, Locale locale, String target, String metaName) {
|
protected static BabelLocalizerᴬᵖᶦ instanceᴺᵉʷ(String name, Locale locale, String target) {
|
||||||
return new BabelLocalizerᴬᵖᶦ() {
|
return new BabelLocalizerᴬᵖᶦ() {
|
||||||
@Override
|
@Override
|
||||||
public String getName() {
|
public String getName() {
|
||||||
|
@ -32,10 +30,6 @@ public interface BabelLocalizerᴬᵖᶦ {
|
||||||
public String getTarget() {
|
public String getTarget() {
|
||||||
return target;
|
return target;
|
||||||
}
|
}
|
||||||
@Override
|
|
||||||
public String getMetaName() {
|
|
||||||
return metaName;
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,6 +17,4 @@ public @interface BabelLocalizer注 {
|
||||||
String locale();
|
String locale();
|
||||||
|
|
||||||
String target();
|
String target();
|
||||||
|
|
||||||
String metaName();
|
|
||||||
}
|
}
|
|
@ -5,6 +5,6 @@ import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.BabelLocalizer注;
|
||||||
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
|
||||||
|
|
||||||
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@BabelLocalizer注(name = "Ascii", locale = "en", target = "Normalized boring company language", metaName = "ascii")
|
@BabelLocalizer注(name = "Ascii", locale = "en", target = "Normalized boring company language")
|
||||||
public interface BabelAscii extends BabelLocalizer {
|
public interface BabelAscii extends BabelLocalizer {
|
||||||
}
|
}
|
|
@ -10,6 +10,6 @@ import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsD
|
||||||
@BabelMethodNameEnforcer注(ranges = {
|
@BabelMethodNameEnforcer注(ranges = {
|
||||||
@BabelMethodNameRange注(start = 0x13000, stop = 0x1342F, name = "Egyptian Hieroglyphs")
|
@BabelMethodNameRange注(start = 0x13000, stop = 0x1342F, name = "Egyptian Hieroglyphs")
|
||||||
})
|
})
|
||||||
@BabelLocalizer注(name = "𓂀", locale = "en", target = "Orange Catholic Church pastors", metaName = "hiero")
|
@BabelLocalizer注(name = "𓂀", locale = "en", target = "Orange Catholic Church pastors")
|
||||||
public interface BabelHiero extends BabelLocalizer {
|
public interface BabelHiero extends BabelLocalizer {
|
||||||
}
|
}
|
|
@ -17,7 +17,7 @@ import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsD
|
||||||
@BabelMethodNameRange注(start = 'ן', stop = 'ן', name = "Hebrew octal #7"),
|
@BabelMethodNameRange注(start = 'ן', stop = 'ן', name = "Hebrew octal #7"),
|
||||||
@BabelMethodNameRange注(start = 'ך', stop = 'ך', name = "Hebrew octal #8")
|
@BabelMethodNameRange注(start = 'ך', stop = 'ך', name = "Hebrew octal #8")
|
||||||
})
|
})
|
||||||
@BabelLocalizer注(name = "ヒナリー", locale = "ie", target = "Hardcore language for real hinarī coders", metaName = "hinari")
|
@BabelLocalizer注(name = "ヒナリー", locale = "ie", target = "Hardcore language for real hinarī coders")
|
||||||
public interface BabelHinarī extends BabelLocalizer {
|
public interface BabelHinarī extends BabelLocalizer {
|
||||||
// Patre nor, qui es in li cieles,
|
// Patre nor, qui es in li cieles,
|
||||||
// mey tui nómine esser sanctificat,
|
// mey tui nómine esser sanctificat,
|
||||||
|
|
|
@ -9,17 +9,17 @@ import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsD
|
||||||
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDoc注;
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDoc注;
|
||||||
|
|
||||||
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@DuytsDocType注(
|
@DuytsDocType注(babel = {
|
||||||
ascii = @DuytsDoc注(purpose = "Hindi class type identifier"),
|
@DuytsDoc注(locale= "en", purpose = "Hindi class type identifier"),
|
||||||
mandarin = @DuytsDoc注(code = "通天塔龸印地語", purpose = "印地語類類型標識符"),
|
@DuytsDoc注(locale= "zh", code = "通天塔龸印地語", purpose = "印地語類類型標識符"),
|
||||||
hindi = @DuytsDoc注(code = "कोलाहलꣻहिन्दी", purpose = "हिंदी वर्ग प्रकार पहचानकर्ता")
|
@DuytsDoc注(locale= "hi", code = "कोलाहलꣻहिन्दी", purpose = "हिंदी वर्ग प्रकार पहचानकर्ता")
|
||||||
)
|
|
||||||
@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")
|
|
||||||
})
|
})
|
||||||
@BabelLocalizer注(name = "हिन्दी", locale = "hi", target = "Seaking God with 1230 million eyes", metaName = "hindi")
|
@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")
|
||||||
|
})
|
||||||
|
@BabelLocalizer注(name = "हिन्दी", locale = "hi", target = "Seaking God with 1230 million eyes")
|
||||||
public interface BabelHindi extends BabelLocalizer {
|
public interface BabelHindi extends BabelLocalizer {
|
||||||
}
|
}
|
|
@ -5,6 +5,6 @@ import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.BabelLocalizer注;
|
||||||
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
|
||||||
|
|
||||||
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@BabelLocalizer注(name = "普通話", locale = "zh", target = "Dragon's nest has 2234 million bass noise ears", metaName = "mandarin")
|
@BabelLocalizer注(name = "普通話", locale = "zh", target = "Dragon's nest has 2234 million bass noise ears")
|
||||||
public interface BabelMandarin extends BabelLocalizer {
|
public interface BabelMandarin extends BabelLocalizer {
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,6 +5,6 @@ import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.BabelLocalizer注;
|
||||||
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
|
import ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ.DuytsDocAuthor注;
|
||||||
|
|
||||||
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
@BabelLocalizer注(name = "русский", locale = "ru", target = "Bãß rocket boot process", metaName = "russian")
|
@BabelLocalizer注(name = "русский", locale = "ru", target = "Bãß rocket boot process")
|
||||||
public interface BabelRussian extends BabelLocalizer {
|
public interface BabelRussian extends BabelLocalizer {
|
||||||
}
|
}
|
|
@ -12,7 +12,7 @@ import java.lang.annotation.Target;
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
@Target({ElementType.TYPE})
|
@Target({ElementType.TYPE})
|
||||||
public @interface DuytsDocAuthor注 {
|
public @interface DuytsDocAuthor注 {
|
||||||
|
|
||||||
String name();
|
String name();
|
||||||
|
|
||||||
String copyright();
|
String copyright();
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
package ᴶᐩᐩ.ᒡᒢᑊᒻᒻᓫᔿ.ᒃᣔᒃᓫᒻ.ᑊᐣᓑᖮᐪᔆ;
|
||||||
|
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
|
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@Target({ElementType.CONSTRUCTOR})
|
||||||
|
public @interface DuytsDocConstructor注 {
|
||||||
|
|
||||||
|
// workflow for translators, set to true to flag this content should
|
||||||
|
// propagated to the other languages of the translatable doc item.
|
||||||
|
String awaitsPropagation() default "";
|
||||||
|
|
||||||
|
DuytsDoc注[] babel();
|
||||||
|
}
|
|
@ -14,15 +14,5 @@ public @interface DuytsDocField注 {
|
||||||
// propagated to the other languages of the translatable doc item.
|
// propagated to the other languages of the translatable doc item.
|
||||||
String awaitsPropagation() default "";
|
String awaitsPropagation() default "";
|
||||||
|
|
||||||
DuytsDoc注 ascii();
|
DuytsDoc注[] babel();
|
||||||
|
|
||||||
DuytsDoc注 mandarin();
|
|
||||||
|
|
||||||
DuytsDoc注 hindi();
|
|
||||||
|
|
||||||
DuytsDoc注 hiero() default @DuytsDoc注(purpose = "");
|
|
||||||
|
|
||||||
DuytsDoc注 hinarī() default @DuytsDoc注(purpose = "");
|
|
||||||
|
|
||||||
DuytsDoc注 russian() default @DuytsDoc注(purpose = "");
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,25 +6,33 @@ import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
@DuytsDocAuthor注(name = "للَّٰهِilLצسُو", copyright = "©Δ∞ 仙上主天")
|
||||||
|
@DuytsDocType注(babel = {
|
||||||
|
@DuytsDoc注(locale= "en", purpose = "Adds Duytschen documentation to a method"),
|
||||||
|
@DuytsDoc注(locale= "zh", code = "荷蘭文法", purpose = "將荷蘭文文檔添加到方法中"),
|
||||||
|
@DuytsDoc注(locale= "hi", code = "डचडॉकविधि", purpose = "एक विधि में डच दस्तावेज़ जोड़ता है")
|
||||||
|
})
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
@Target({ElementType.METHOD})
|
@Target({ElementType.METHOD})
|
||||||
public @interface DuytsDocMethod注 {
|
public @interface DuytsDocMethod注 {
|
||||||
|
|
||||||
// workflow for translators, set to true to flag this content should
|
@DuytsDocMethod注(babel = {
|
||||||
// propagated to the other languages of the translatable doc item.
|
@DuytsDoc注(locale= "en", purpose = "Translater workflow helper to mark propagation of text translations"),
|
||||||
|
@DuytsDoc注(locale= "zh", purpose = "用於標記文本翻譯傳播的翻譯工作流助手"),
|
||||||
|
@DuytsDoc注(locale= "hi", purpose = "पाठ अनुवादों के प्रसार को चिह्नित करने के लिए अनुवादक कार्यप्रवाह सहायक")
|
||||||
|
})
|
||||||
String awaitsPropagation() default "";
|
String awaitsPropagation() default "";
|
||||||
|
|
||||||
DuytsDoc注 ascii();
|
@DuytsDocMethod注(babel = {
|
||||||
|
@DuytsDoc注(locale= "en", purpose = "All the translated language information of the annatated method"),
|
||||||
DuytsDoc注 mandarin();
|
@DuytsDoc注(locale= "zh", purpose = "註釋方法的所有翻譯語言信息"),
|
||||||
|
@DuytsDoc注(locale= "hi", purpose = "एनाटेड विधि की सभी अनूदित भाषा की जानकारी")
|
||||||
DuytsDoc注 hindi();
|
})
|
||||||
|
DuytsDoc注[] babel();
|
||||||
DuytsDoc注 hiero() default @DuytsDoc注(purpose = "");
|
|
||||||
|
|
||||||
DuytsDoc注 hinarī() default @DuytsDoc注(purpose = "");
|
|
||||||
|
|
||||||
DuytsDoc注 russian() default @DuytsDoc注(purpose = "");
|
|
||||||
|
|
||||||
|
@DuytsDocMethod注(babel = {
|
||||||
|
@DuytsDoc注(locale= "en", purpose = "All the translated exceptions a method may throw"),
|
||||||
|
@DuytsDoc注(locale= "zh", purpose = "一個方法可能拋出的所有翻譯異常"),
|
||||||
|
@DuytsDoc注(locale= "hi", purpose = "सभी अनुवादित अपवाद एक विधि फेंक सकते हैं")
|
||||||
|
})
|
||||||
DuytsDocThrows注[] exceptions() default {};
|
DuytsDocThrows注[] exceptions() default {};
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,15 +12,5 @@ public @interface DuytsDocThrows注 {
|
||||||
|
|
||||||
String id();
|
String id();
|
||||||
|
|
||||||
String ascii();
|
DuytsDoc注[] babel();
|
||||||
|
|
||||||
String mandarin();
|
|
||||||
|
|
||||||
String hindi();
|
|
||||||
|
|
||||||
String hiero() default "";
|
|
||||||
|
|
||||||
String hinarī() default "";
|
|
||||||
|
|
||||||
String russian() default "";
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,17 +12,8 @@ public @interface DuytsDocType注 {
|
||||||
|
|
||||||
// workflow for translators, set to true to flag this content should
|
// workflow for translators, set to true to flag this content should
|
||||||
// propagated to the other languages of the translatable doc item.
|
// propagated to the other languages of the translatable doc item.
|
||||||
|
//@DuytsDocMethod注
|
||||||
String awaitsPropagation() default "";
|
String awaitsPropagation() default "";
|
||||||
|
|
||||||
DuytsDoc注 ascii();
|
DuytsDoc注[] babel();
|
||||||
|
|
||||||
DuytsDoc注 mandarin();
|
|
||||||
|
|
||||||
DuytsDoc注 hindi();
|
|
||||||
|
|
||||||
DuytsDoc注 hiero() default @DuytsDoc注(purpose = "");
|
|
||||||
|
|
||||||
DuytsDoc注 hinarī() default @DuytsDoc注(purpose = "");
|
|
||||||
|
|
||||||
DuytsDoc注 russian() default @DuytsDoc注(purpose = "");
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,9 +10,11 @@ import java.lang.annotation.Target;
|
||||||
@Target({ElementType.ANNOTATION_TYPE})
|
@Target({ElementType.ANNOTATION_TYPE})
|
||||||
public @interface DuytsDoc注 {
|
public @interface DuytsDoc注 {
|
||||||
|
|
||||||
|
String locale();
|
||||||
|
|
||||||
String code() default "";
|
String code() default "";
|
||||||
|
|
||||||
String purpose();
|
String purpose() default "";
|
||||||
|
|
||||||
String note() default "";
|
String note() default "";
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue