[发明专利]提取模板文件数据结构的方法和装置有效
| 申请号: | 201410751250.9 | 申请日: | 2014-12-09 |
| 公开(公告)号: | CN105740260B | 公开(公告)日: | 2019-07-09 |
| 发明(设计)人: | 杨周璇 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
| 主分类号: | G06F16/951 | 分类号: | G06F16/951 |
| 代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
| 地址: | 英属开曼群岛大开*** | 国省代码: | 开曼群岛;KY |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 提取 模板 文件 数据结构 方法 装置 | ||
1.一种提取模板文件数据结构的方法,其特征在于,包括:
生成与模板文件对应的抽象语法树;
提取所述抽象语法树中的数据相关节点,根据所述数据相关节点的内容以及该内容的状态属性,生成对应的初始数据结构,并将所述初始数据结构添加至初始数据结构集;
根据所述初始数据结构对应的状态属性,对所述初始数据结构集中的初始数据结构进行调整,得到对应于所述模板文件的数据结构集。
2.根据权利要求1所述的方法,其特征在于,所述根据所述数据相关节点的内容以及该内容的状态属性,生成对应的初始数据结构,包括:
当所述数据相关节点的内容的状态属性为指向一个宏调用时,为对应的宏定义中的形式参数和实际参数分别生成对应的初始数据结构。
3.根据权利要求1所述的方法,其特征在于,所述根据所述初始数据结构对应的状态属性,对所述初始数据结构集中的初始数据结构进行调整,包括:
当所述数据相关节点的内容的状态属性为指向一个宏调用时,记录对应的宏定义中的形式参数;
对所述数据相关节点的内容进行语义分析,以确定对应的所有数据参数之间的数值关系;
根据所述数值关系,判断对应的宏内容中的每个数据参数是否包含所述形式参数,若包含则将所述形式参数替换为对应的实际参数,并生成对应的初始数据结构,否则直接生成对应的初始数据结构;
删除所述形式参数对应的初始数据结构。
4.根据权利要求1所述的方法,其特征在于,所述根据所述数据相关节点的内容以及该内容的状态属性,生成对应的初始数据结构,包括:
当所述数据相关节点的内容的状态属性为指向一个未确定为不会继续处理的左值且该数据相关节点的类型为for语句时,为该for语句的左值参数和右值数组参数分别生成对应的初始数据结构。
5.根据权利要求1所述的方法,其特征在于,所述根据所述初始数据结构对应的状态属性,对所述初始数据结构集中的初始数据结构进行调整,包括:
当所述数据相关节点的内容的状态属性为指向一个未确定为不会继续处理的左值且该数据相关节点的类型为for语句时,记录该for语句中的左值;
对所述数据相关节点的内容进行语义分析,以确定对应的所有数据参数之间的数值关系;
根据所述数值关系,判断对应的宏内容中的每个数据参数是否包含所述左值参数,若包含则将所述左值参数替换为对应的右值数组参数的首个子元素,并生成对应的初始数据结构,否则直接生成对应的初始数据结构;
删除所述左值参数对应的初始数据结构。
6.根据权利要求3或5所述的方法,其特征在于,所述根据所述初始数据结构对应的状态属性,对所述初始数据结构集中的初始数据结构进行调整,还包括:
在所述初始数据结构集中,移除对应的状态属性为指向非变量或方法的初始数据结构。
7.根据权利要求1所述的方法,其特征在于,所述根据所述数据相关节点的内容以及该内容的状态属性,生成对应的初始数据结构,包括:
当所述数据相关节点的内容的状态属性为指向未确定为不会继续处理的左值参数且该数据相关节点的类型为非for语句,或者所述数据相关节点的内容的状态属性为其他类型时,判断所述初始数据结构集中是否已存在对应的初始数据结构;
若不存在,则根据所述数据相关节点的内容生成相应的初始数据结构;
若存在,则在所述数据相关节点的内容的状态属性为一个左值、方法或值类型确定的变量,且所述数据相关节点的内容与已存在的初始数据结构对应的状态属性类型不同的情况下,根据所述数据相关节点的内容更新所述已存在的初始数据结构,并将所述已存在的初始数据结构记录为对应的原信息。
8.根据权利要求7所述的方法,其特征在于,所述根据所述初始数据结构对应的状态属性,对所述初始数据结构集中的初始数据结构进行调整,包括:
通过所述原信息恢复相应的数据相关节点的初始数据结构;
在完成所述恢复的初始数据结构集中,移除对应的状态属性为指向非变量或方法的初始数据结构。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410751250.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:识别网络关系的方法、装置及服务器
- 下一篇:一种数据同步方法、装置及系统





