[发明专利]一种高级语言的解析方法、设备和计算机可读存储介质在审
申请号: | 202210674693.7 | 申请日: | 2022-06-14 |
公开(公告)号: | CN115145575A | 公开(公告)日: | 2022-10-04 |
发明(设计)人: | 郑可冠;倪洪生;陈佳玲;栗禄尧;曾杰;武志飞;宋晓彤 | 申请(专利权)人: | 网易有道信息技术(北京)有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/30 |
代理公司: | 北京维昊知识产权代理事务所(普通合伙) 11804 | 代理人: | 孙宁;陈姗姗 |
地址: | 100094 北京市海淀区西北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 高级 语言 解析 方法 设备 计算机 可读 存储 介质 | ||
1.一种高级语言的解析方法,其特征在于,包括:
获取由高级语言编写的待处理程序代码;
根据语法对应关系将所述待处理程序代码转换为脚本源代码,所述语法对应关系包括高级语言与脚本语言的语法对应关系;以及
根据所述脚本源代码生成抽象语法树。
2.根据权利要求1所述的解析方法,其特征在于,所述根据语法对应关系将所述待处理程序代码转换为脚本源代码包括:
将所述待处理程序代码进行分割,以生成语法单位,其中所述语法单位包括以下任一或多项:语法元素单元、表达式、声明或语句、外部定义、命名空间和函数入口;以及
根据语法对应关系将所述语法单位转换为对应的脚本源代码。
3.根据权利要求2所述的解析方法,其特征在于,其中语法元素单元包括以下一项或多项:标点符号、常量和关键字;表达式包括以下一项或多项:赋值表达式、自增表达式和自减表达式;声明包括函数声明;语句包括判断语句和循环语句。
4.根据权利要求2所述的解析方法,其特征在于,其中将所述待处理程序代码进行分割,以生成语法元素单元包括:
将所述待处理程序代码进行识别,以确定语法元素;以及
对所述待处理程序代码进行分割,并将相同的语法元素进行组合以生成语法元素单元。
5.根据权利要求2所述的解析方法,其特征在于,所述根据所述脚本源代码生成抽象语法树包括:
对所述语法单位进行位置分析,以向所述语法单位对应的脚本源代码配置位置信息;以及
根据所述位置信息确定脚本源代码的组合顺序,以生成抽象语法树。
6.根据权利要求5所述的解析方法,其特征在于,所述根据所述位置信息确定脚本源代码的组合顺序,以生成抽象语法树包括:
将所述表达式和语法元素对应的脚本源代码与语法树的结构进行匹配,以生成第一抽象语法树。
7.根据权利要求6所述的解析方法,其特征在于,所述根据所述位置信息确定脚本源代码的组合顺序,以生成抽象语法树还包括:
将所述声明或语句对应的脚本源代码与语法树的结构进行匹配,以生成声明或语句对应的抽象语法树;以及
将所述声明或语句对应的抽象语法树与第一抽象语法树连接,以生成第二抽象语法树。
8.根据权利要求7所述的解析方法,其特征在于,所述根据所述位置信息确定脚本源代码的组合顺序,以生成抽象语法树还包括:
对所述第二抽象语法树配置外部定义和命名空间;以及
在所述第二抽象语法树的最外层结构加入立即执行函数结构,以得到所述待处理程序代码对应的抽象语法树。
9.一种设备,其特征在于,包括:
处理器;以及
存储器,其存储有用于对高级语言进行解析的计算机指令,当所述计算机指令由所述处理器运行时,使得所述设备执行根据权利要求1-8的任意一项所述的解析方法。
10.一种计算机可读存储介质,其特征在于,包含用于对高级语言进行解析的程序指令,当所述程序指令由处理器执行时,使得实现根据权利要求1-8的任意一项所述的解析方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网易有道信息技术(北京)有限公司,未经网易有道信息技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210674693.7/1.html,转载请声明来源钻瓜专利网。