ZenAnnotation
Link to zenannotation
ZenAnnotation 可以被提供给一个类或其方法以将其公开给 ZenScript。
类注解
Link to 类注解
这些注解可以被提供给 ZenClass
注解 | 值 | 目标 | 信息 |
---|---|---|---|
注解 @ZenClass | 值 ZenClass 类名(如 crafttweaker.item.IItemStack ),可以与正式的类名不同 | 目标 类 | 信息 名称必须唯一 |
注解 @ZenExpansion | 值 被扩展的 ZenType 名(如 crafttweaker.item.IItemStack ) | 目标 类 | 信息 名称必须已经存在(你不能扩展不存在的 ZenType) |
注解 @ZenRegister | 值 | 目标 类 | 信息 用于自动注册这个类或扩展 |
注解 @IterableList | 值 可迭代的 ZenClass 类名(如 crafttweaker.mods.IMod ) | 目标 类 | 信息 需要可赋值给 Iterable<Type> 的类 |
注解 @IterableMap | 值 键和值的可迭代的 ZenClass 类名(如 string ,crafttweaker.item.IItemStack ) | 目标 类 | 信息 需要可赋值给 List<Type> 的类 |
注解 @IterableSimple | 值 可迭代的 ZenClass 类名(如 crafttweaker.mods.IMod ) | 目标 类 | 信息 需要可赋值给 Map<KeyType, ValueType> 的类 |
注解 @BracketHandler | 值 括号处理器的优先级(如 priority = 19 ) | 目标 类 | 信息 需要可赋值给 IBracketHandler 的类 |
注解 @ModOnly | 值 需要的 mod 的名称(isModLoaded(annotation.getValue()) 需要为 true) | 目标 类 | 信息 与 @ZenRegister 结合使用 |
参数注解
Link to 参数注解
这些注解可以被提供给方法的参数
注解 | 目标 | 信息 |
---|---|---|
注解 @NotNull | 目标 参数 | 信息 什么也不做(NYI) |
注解 @Optional | 目标 参数 | 信息 表示参数是可选的。 可选参数在方法被调用时可以省略 |
方法注解
Link to 方法注解
这些注解可以被提供给方法(包括静态的和非静态的)
注解 | 值 | 目标 |
---|---|---|
注解 @ZenCaster | 值 | 目标 方法 |
注解 @ZenOperator | 值 运算符类型 | 目标 方法 |
注解 @ZenGetter | 值 getter 的名称(如 “name”)当被省略时,将使用没有()的方法名 | 目标 方法 |
注解 @ZenSetter | 值 setter 的名称(如 “name”)当被省略时,将使用没有()的方法名 | 目标 方法 |
注解 @ZenMemberGetter | 值 | 目标 方法 |
注解 @ZenMemberSetter | 值 | 目标 方法 |
注解 @ZenMethod | 值 | 目标 方法 |
注解 @ZenMethodStatic | 值 | 目标 方法 |
注解 @ZenDoc | 值 用于 dumpZS 的附加方法信息 | 目标 方法 |
字段注解
Link to 字段注解
这些注解可以被提供给公开字段(包括静态的和非静态的)
注解 | 目标 | 信息 |
---|---|---|
注解 @ZenProperty | 目标 字段 | 信息 @ZenSetter 和 @ZenGetter 的结合 |