我是靠谱客的博主 机灵向日葵,这篇文章主要介绍【Groovy】编译时元编程 ( AST 语法树分析 | ClassNode 根节点 | 方法 Methods 节点 | 字段 Fields 节点 | 属性 Properties 节点 )一、AST 语法树分析,现在分享给大家,希望可以做个参考。
文章目录
- 一、AST 语法树分析
一、AST 语法树分析
在上一篇博客 【Groovy】编译时元编程 ( 编译时元编程引入 | 声明需要编译时处理的类 | 分析 Groovy 类的 AST 语法树 ) 中 , 使用 GroovyConsole 工具分析了
class Student{
def name
def hello(){
println "hello"
}
}
类的 AST 语法树 , 下面分析该语法树 ;

展开 AST 语法树后的效果 :

在最顶层的根节点是 ClassNode 节点 , 在根节点下 , 有 方法 Methods 节点 , 字段 Fields 节点 , 属性 Properties 节点 ;
方法 Methods 节点 有
2
2
2 个 , 一个是默认的构造方法 , 一个是自定义的 hello 方法 , 对应
def hello(){
println "hello"
}
方法 ; 字段 Fields 节点 和 属性 Properties 节点 各一个 , 就是自定义的 name 字段 , 对应
def name
成员 ;
拿到了 AST 语法树之后 , 就可以获取到 Student 类的每一个节点 , 类 , 方法 , 属性 , 字段 ;
最后
以上就是机灵向日葵最近收集整理的关于【Groovy】编译时元编程 ( AST 语法树分析 | ClassNode 根节点 | 方法 Methods 节点 | 字段 Fields 节点 | 属性 Properties 节点 )一、AST 语法树分析的全部内容,更多相关【Groovy】编译时元编程内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复