中关村在线

软件

IntelliJ IDEA PSI自定义方法

若需在PSI类中添加自定义方法,须单独定义这些方法,并配置Grammar Kit将其自动注入到生成的代码中。

1、 创建一个工具类,封装若干实用方法。

2、 该方法用于自定义键值对的获取逻辑。其中涉及的ProtoBufProperty相关代码并非手动编写,而是由协议缓冲区解析器自动生成;同理,element.getKey()方法也由解析器动态生成,不存在于原始源码中。所示。

3、 修改 protobuf.bnf 文件中的语法规则,并配置 psiImpUtil 工具,具体设置参见附图。

4、 更新 psiImplUtilClass 属性后,请重新生成解析器,具体操作所示。

5、 定义ProtobufUtil工具类,提供根据键名获取对应属性值的功能。

6、 ProtobufUtil 类通过 PsiTreeUtil 获取子类型,具体实现所示。

7、 已实现工具类的属性搜索功能及自定义方法,效果所示。

展开全文
人赞过该文
内容纠错

相关电商优惠

评论

更多评论
还没有人评论~ 快来抢沙发吧~

读过此文的还读过

点击加载更多

内容相关产品

说点什么吧~ 0

发评论,赚金豆

收藏 0 分享
首页查报价问答论坛下载手机笔记本游戏硬件数码影音家用电器办公打印 更多

更多频道

频道导航
辅助工具