手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

Intellij idea插件如何在PSI工具类中自定义方法

时间:2024-10-18 12:01:46

1、定义一个帮助类,在其中定义一些方法。如图

Intellij idea插件如何在PSI工具类中自定义方法

2、自定义获取键值对的方法。ProtoBufProperty相关的代码,并不存在现有的代码中,它是通过解析器生成的。还有“element.getKey”方法,也是由解析器生成的。如图

Intellij idea插件如何在PSI工具类中自定义方法
Intellij idea插件如何在PSI工具类中自定义方法

3、修改“protobuf.bnf”文件中的规则。添加psiImpUtil工具配置。如图

Intellij idea插件如何在PSI工具类中自定义方法

4、更新psiImplUtilClass attribute以后,重新生成解析器。如图

Intellij idea插件如何在PSI工具类中自定义方法

5、定义一个ProtobufUtil类,用于根据键获取属性。如图

Intellij idea插件如何在PSI工具类中自定义方法

6、ProtobufUtil类中使用PsiTreeUtil获取到子类型。如图

Intellij idea插件如何在PSI工具类中自定义方法

7、实现了工具类搜索属性。以及自定制方法。如图

Intellij idea插件如何在PSI工具类中自定义方法
© 手抄报圈