资源 [原创][开发者库]一个对于groovy DSL语法开发的框架

MagicLu

【Lv:3】

注册
2019/02/03
消息
74
金粒
4,914.00金粒
DSL(Domain Specified Language领域通用语言。这里我实现了其解析为配置的功能。
github: 点击进入

SimpleDSL4j
SimpleDSL - 可以简化自定义DSL文件的解析

具体使用方法参见Example类

如代码案例所示,hello和items为父标签,一般如hello,items所示

Java:
package net.noyark.www.dsl.utils


class Example extends DSLParser {

Example() {
super(new File("test.groovy"),"UTF-8")
}

@Override
void byProperty(String name, Object args,String stack) {
println name+" : "+args
println(stack)
}

@DSLMethod
void hello(Closure closure){
closure()
}
@DSLMethod
void items(Closure closure){
closure()
}

static void main(String[] args) {
Example example = new Example()
}
}


byProperty可以获取值标签,如url就是一个值标签,在Example中没有指定,会在byProperty中获取

items{
hello{
url "helloworld"
}
}
如上面代码执行为

url : [0]
items.hello

同样的,您可以在dsl上写groovy代码

items{
hello{
url "helloworld"
print "abc"
}
}
 

在线会员

  • Drbiaodi
  • 画饼一鸽
  • xiaozhi_Cc
  • lkjk
  • Anow
  • ObsidianDev
  • PHEyeji
  • 蓝桉大王
  • Nico6719
后退
顶部 底部