🎸自定义类型

创建自定义类型需要定义两个类,分别继承 SBTypeSBElement,我叫他类型与元素,类型用于创建元素,元素直接参与表达式解析,下面是内置类型整数的实现以供参考。

public class IntType extends SBType<IntElement> {
    public static IntType inst = new IntType();
    private IntType() {}
    
    @Override
    public Plugin getPlugin() {
        return SBPlaceholder2.plugin;
    }
    
    @Override
    public String getName() {
        return "Int";
    }
    
    @Override
    public IntElement newInst(Parser parser, EntrustInst... insts) {
        return insts[0].execute(parser).asInt();
    }
}

方法详解

public Plugin getPlugin()

  • 获取提供插件。

public String getName()

  • 获取类型名,返回值应与对应的元素的 getName() 方法返回值相同。

public IntElement newInst(Parser parser, EntrustInst... insts)

  • 用于构造新元素。

最后执行 IntType.inst.register("Int") 注册类型。

下面是内置元素整数的实现

快速构建

最后更新于