[发明专利]一种函数调用关系检测方法及装置有效
申请号: | 202110338210.1 | 申请日: | 2021-03-30 |
公开(公告)号: | CN113076244B | 公开(公告)日: | 2023-03-03 |
发明(设计)人: | 白明乾 | 申请(专利权)人: | 深圳前海微众银行股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 邹雅莹 |
地址: | 518027 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 函数 调用 关系 检测 方法 装置 | ||
1.一种函数调用关系检测方法,其特征在于,所述方法包括:
确定待检测代码中各待检测函数的节点信息,其中,节点信息中包括用于表征待检测函数是否为分形节点的节点标签;
根据各第一待检测函数的节点信息构建第一分形树,并根据各第二待检测函数的节点信息构建第二分形树;其中,第一待检测函数为节点标签指示为非分形节点的待检测函数;第二待检测函数为节点标签指示为分形节点的待检测函数;
根据所述第一分形树和所述第二分形树,构建3D分形树;
通过所述3D分形树确定所述各待检测函数是否符合函数调用关系。
2.如权利要求1中所述的方法,其特征在于,所述节点信息还包括子节点;所述子节点为待检测函数调用的函数;所述根据各第一待检测函数的节点信息构建第一分形树,包括:
针对任一第一待检测函数,将所述第一待检测函数作为第一分形树的根节点,将所述根节点作为第一构建节点,判断所述第一构建节点的子节点是否为非分形节点;
若为非分形节点则将所述子节点构建为所述第一构建节点的下一层节点,并将所述下一层节点作为第一构建节点,返回判断所述第一构建节点的子节点是否为非分形节点的步骤;
若所述第一构建节点的子节点为分形节点,将所述子节点构建为所述第一构建节点的不具有子节点的虚拟节点;
直至所述第一分形树中任一节点均不具有子节点。
3.如权利要求2中所述的方法,其特征在于,所述根据各第二待检测函数的节点信息构建第二分形树,包括:
针对任一第二待检测函数,生成所述第二待检测函数的虚拟节点作为第二分形树的根节点;生成所述第二待检测函数的任一函数分支对应的虚拟节点作为所述第二分形树的根节点下的第一层节点;
通过如下方式生成任一函数分支对应的虚拟节点的下层节点:
将所述虚拟节点作为第二构建节点,判断所述第二构建节点的子节点是否为非分形节点;
若所述第二构建节点的子节点为非分形节点,则将所述子节点构建为所述第二构建节点的下一层节点,并将所述下一层节点作为第二构建节点,返回判断所述第二构建节点的子节点是否为非分形节点的步骤;
若所述第二构建节点的子节点为分形节点,将所述子节点构建为所述第二构建节点的不具有子节点的虚拟节点;
直至所述第二分形树中任一节点均不具有子节点。
4.如权利要求3中所述的方法,其特征在于,根据所述第一分形树和所述第二分形树,构建3D分形树,包括:
确定所述第一分形树中的虚拟节点对应的第二分形树;
通过所述第一分形树中的虚拟节点,将所述第一分形树和所述第二分形树融合为3D分形树。
5.如权利要求4中所述的方法,其特征在于,所述将所述第一分形树和所述第二分形融合为3D分形树,包括:
将所述虚拟节点对应的第二分形树,补充至所述第一分形树的所述虚拟节点中,得到所述第一分形树和所述第二分形树融合的3D分形树;或者,
针对所述虚拟节点对应的第二分形树的每个分支,将所述分支分别补充至所述第一分形树的所述虚拟节点中,得到所述第一分形树和所述第二分形树的分支融合的,具有不同分支的至少一个3D分形树。
6.如权利要求1至5任一项中所述的方法,其特征在于,确定待检测代码中各待检测函数的节点信息,包括:
遍历所述待检测代码中的各元素;
针对任一元素,若所述元素为函数,则确定为待检测函数;确定所述待检测函数是否为设定函数,若为设定函数,则确定所述待检测函数的节点标签指示所述待检测函数为分形节点;遍历所述待检测函数的函数体代码中的各元素,从而确定所述待检测函数的子节点。
7.如权利要求1至5任一项中所述的方法,其特征在于,
通过所述3D分形树确定所述各待检测函数是否符合函数调用关系,包括:
在构建所述3D分形树过程中每增加一个节点之后,对所述3D分形树进行遍历,确定所述3D分形树中的各待检测函数是否符合函数调用关系;若不符合,则停止对所述3D分形树的构建。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海微众银行股份有限公司,未经深圳前海微众银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110338210.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种缓卸液压缸
- 下一篇:一种功能性寡糖糖苷酯的制备方法及其应用