【技术实现步骤摘要】
代码解析方法、装置及电子设备
[0001]本申请实施例涉及计算机
,尤其涉及代码解析方法、装置及电子设备。
技术介绍
[0002]相关技术中对于代码的自动化理解主要是停留在对代码中数据类型、函数、函数间调用的理解层面,而对于函数内部逻辑无法进行有效的分析,也就是说,相关技术中对于代码进行自动化理解的粒度是较为粗糙的,这一弊端导致开发人员需要投入角度较多时间进行代码理解,才能够进行代码开发或者维护,从而降低了代码开发和维护效率。
技术实现思路
[0003]为了提升代码理解效率、开发和维护的效率,降低代码管理成本,便于相关技术人员从更细粒度解读代码,本申请实施例提供代码解析方法、装置及电子设备。
[0004]一方面,本申请实施例提供了一种代码解析方法,所述方法包括:
[0005]获取目标代码;
[0006]以所述目标代码中的单一函数对象为解析入口,对所述目标代码进行函数内部逻辑粒度的解析,得到解析结果;
[0007]显示所述解析结果。
[0008]另一方面,本申请实施 ...
【技术保护点】
【技术特征摘要】
1.一种代码解析方法,其特征在于,所述方法包括:获取目标代码;以所述目标代码中的单一函数对象为解析入口,对所述目标代码进行函数内部逻辑粒度的解析,得到解析结果;显示所述解析结果。2.根据权利要求1所述的方法,其特征在于,所述以所述目标代码中的单一函数对象为解析入口,对所述目标代码进行函数内部逻辑粒度的解析,得到解析结果之前,所述方法还包括:对所述目标代码进行语法分析,得到所述目标代码对应的抽象语法树;基于所述抽象语法树对所述目标代码进行语义分析,得到所述目标代码的函数信息和数据信息;所述以所述目标代码中的单一函数对象为解析入口,对所述目标代码进行函数内部逻辑粒度的解析,得到解析结果,包括:以所述单一函数对象为解析入口,根据所述函数信息和所述数据信息对所述目标代码进行函数内部逻辑解析,得到所述解析结果。3.根据权利要求2所述的方法,其特征在于:所述函数信息包括下述至少之一:自定义函数信息、函数调用信息、远程过程调用信息、数据库访问信息、远程字典服务信息、函数内分支控制语句信息、函数内逻辑处理语句信息;所述数据信息包括下述至少之一:变量声明位置信息、变量类型信息、变量定义位置信息、变量标识信息。4.根据权利要求2或3所述的方法,其特征在于,根据所述函数信息和所述数据信息对所述目标代码进行函数内部逻辑解析,得到解析结果,包括:确定第一函数,所述第一函数为待进行所述函数内部逻辑分析的函数;扫描所述第一函数,得到至少一个动作执行语句;对所述至少一个动作执行语句进行递归语句分析,得到所述解析结果;所述递归语句分析中的每一个语句分析操作,包括:分析所述语句分析操作对应的动作执行语句,得到动作对象和操作信息,所述动作对象为所述操作信息对应的操作的触发者或接受者。5.根据权利要求4所...
【专利技术属性】
技术研发人员:张杰,
申请(专利权)人:腾讯科技武汉有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。