[发明专利]获取参数名和局部变量名的方法、装置、设备及存储介质有效

专利信息
申请号: 201810426003.X 申请日: 2018-05-07
公开(公告)号: CN108628635B 公开(公告)日: 2021-12-14
发明(设计)人: 林锡鑫 申请(专利权)人: 广州视源电子科技股份有限公司;广州视睿电子科技有限公司
主分类号: G06F8/74 分类号: G06F8/74;G06F8/30
代理公司: 北京品源专利代理有限公司 11332 代理人: 孟金喆
地址: 510530 广东省*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 获取 参数 局部 变量 方法 装置 设备 存储 介质
【权利要求书】:

1.一种获取参数名和局部变量名的方法,其特征在于,包括:

解析源代码中的注解标记并修改源代码,修改后的源代码的预设代码行添加有识别标记;

通过反射机制获取修改后的源代码中类的成员函数参数名;

运行修改后的源代码获取局部变量名;

其中,所述解析源代码中的注解标记并修改源代码,包括:

创建一个实现AbstractProcessor的接口的类,用于获取待解析的Java源文件;

使用JDK提供的tools.jar包中的ASTParser类,根据Java源文件生成抽象语法树;

通过抽象语法树,搜索第一注解字段标记,并通过抽象语法树修改成员函数的参数;

通过抽象语法树,搜索变量名获取语句,并修改该语句中所使用的参数;

其中,所述搜索变量名获取语句,并修改该语句中所使用的参数,包括:

获取第一局部变量的变量名字符串;

通过抽象语法树,替换变量名获取语句中的Object类型的第一局部变量为String类型的第一局部变量参数;

其中,所述第一局部变量的名称为无法直接获取的变量名称。

2.根据权利要求1所述的方法,其特征在于,所述解析源代码中的注解标记并修改源代码之前,还包括:

接收第一注解字段,所述第一注解字段对应于源代码中的类、类的成员函数或成员函数的参数;

在已加入第一注解字段的类的成员函数中,声明第一局部变量并加入变量名获取语句。

3.根据权利要求1所述的方法,其特征在于,所述通过反射机制获取修改后的源代码中类的成员函数参数名,具体包括:

通过反射获取第一注解字段的信息;

输出第一注解字段中的名称属性,所述名称属性为所需的成员函数参数名或局部变量名。

4.根据权利要求1所述的方法,其特征在于,所述通过抽象语法树修改成员函数的参数,具体包括:

若第一注解字段标记附加在成员函数的参数上,则通过所述抽象语法树,获取所述参数的参数名字符串,对所述参数增加第二注解字段;

若第一注解字段标记附加在成员函数上,通过抽象语法树,遍历所述成员函数的全部参数,获取所述参数名字符串,对所述参数增加第二注解字段;

若第一注解字段标记附加在类上,则对所述类包括的所有的方法增加第二注解字段。

5.根据权利要求2所述方法,其特征在于,所述第一局部变量为Object类型的局部变量。

6.一种获取参数名和局部变量名的装置,其特征在于,包括:

代码解析模块,用于解析源代码中的注解标记并修改源代码,修改后的源代码的预设代码行添加有识别标记;

参数名获取模块,用于通过反射机制获取修改后的源代码中类的成员函数参数名;

局部变量获取模块,用于运行修改后的源代码获取局部变量名;

其中,所述代码解析模块,包括:

接口创建单元,用于创建一个实现AbstractProcessor的接口的类,用于获取待解析的Java源文件;

抽象语法树生成单元,用于使用JDK提供的tools.jar包中的ASTParser类,根据Java源文件生成抽象语法树;

成员函数修改单元,用于通过抽象语法树,搜索第一注解字段标记,并通过抽象语法树修改成员函数的参数;

特定语句修改单元,用于通过抽象语法树,搜索变量名获取语句,并修改该语句中所使用的参数;

其中,所述特定语句修改单元,还用于:

获取第一局部变量的变量名字符串;

通过抽象语法树,替换变量名获取语句中的Object类型的第一局部变量为String类型的第一局部变量参数;

其中,所述第一局部变量的名称为无法直接获取的变量名称。

7.一种设备,其特征在于,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序;

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的获取参数名和局部变量名的方法。

8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一所述的获取参数名和局部变量名的方法。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州视源电子科技股份有限公司;广州视睿电子科技有限公司,未经广州视源电子科技股份有限公司;广州视睿电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201810426003.X/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top