[发明专利]基于模板预处理添加新语意结构的方法、装置及电子设备有效
申请号: | 201811406055.7 | 申请日: | 2018-11-23 |
公开(公告)号: | CN109614104B | 公开(公告)日: | 2022-04-05 |
发明(设计)人: | 侯文杰 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京风雅颂专利代理有限公司 11403 | 代理人: | 鲍胜如 |
地址: | 100041 北京市石景山区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 模板 预处理 添加 语意 结构 方法 装置 电子设备 | ||
本发明实施例中提供了一种基于模板预处理添加新语意结构的方法、装置及电子设备,属于数据处理技术领域,该方法包括:在原生编译器环境的代码中,定义原生编译器无法正常解析的包含预设调用接口的新语意结构;设置用于解析所述新语意结构的特定解析程序,所述特定解析程序能够被加载至所述原生编译器环境中;当所述新语意结构被所述原生编译器编译时,利用所述预设调用接口调用所述特定解析程序;所述特定解析程序在完成解析后调用所述原生编译器,将所述特定解析程序生成的解析文件加载至所述原生编译器中,所述原生编译器将所述解析文件与所述编译环境中的可解析代码一起编译。本申请的方案提高了代码编译的效率。
技术领域
本发明涉及数据处理技术领域,尤其涉及一种基于模板预处理添加新语意结构的方法、装置及电子设备。
背景技术
随着嵌入式应用的推广和因特网的普及,嵌入式设备已经开始进入千家万户,它可以广泛应用于手持设备、Web终端、数字电视机顶盒等各种信息电器和便携式网络终端中。嵌入式浏览器作为嵌入式设备上一个重要的用户应用软件,已经成为连接网络和个人用户的桥梁。
网页脚本语言使得信息和用户之间不仅仅只是一种显示和浏览的关系,而是实现了一种实时的、动态的、可交互的表达能力,使静态的HTML页面被可以提供动态实时信息,并对用户操作进行反应的Web页面所取代,这必然会要求浏器提供对脚本解析执行的支持。
现有技术中对于脚本语言的解析仅仅限制于编译器支持的特定语法结构,对于能够实现特殊效果的特定语法,往往需要用户进行大量的代码编写,导致代码的编译效率低下。
发明内容
有鉴于此,本发明实施例提供一种基于模板预处理添加新语意结构的方法、装置及电子设备,至少部分解决现有技术中存在的问题。
第一方面,本发明实施例提供了一种基于模板预处理添加新语意结构的方法,包括:
在原生编译器环境的代码中,定义原生编译器无法正常解析的包含预设调用接口的新语意结构;
设置用于解析所述新语意结构的特定解析程序,所述特定解析程序能够被加载至所述原生编译器环境中;
当所述新语意结构被所述原生编译器编译时,利用所述预设调用接口调用所述特定解析程序;
所述特定解析程序在完成解析后调用所述原生编译器,将所述特定解析程序生成的解析文件加载至所述原生编译器中,所述原生编译器将所述解析文件与所述编译环境中的可解析代码一起编译。
根据本发明实施例的一种具体实现方式,所述在原生编译器环境的代码中,定义原生编译器无法正常解析的包含预设调用接口的新语意结构,包括:
定义包含不同数据类型变量的结构体,所述结构体至少包括类型和值两个变量,类型和值的域随着程序的执行也动态变化。
根据本发明实施例的一种具体实现方式,所述在原生编译器环境的代码中,定义原生编译器无法正常解析的包含预设调用接口的新语意结构,还包括:
定义存储逻辑结构来描述所述代码,所述存储逻辑结构包括节点域、兄弟域及父亲域,所述节点域存放语句本身的性质,所述兄弟域用来表示顺序执行关系,所述父亲域用来表示调用关系。
根据本发明实施例的一种具体实现方式,所述设置用于解析所述新语意结构的特定解析程序,包括:
在所述特定解析程序中设置词法分析器,所述词法分析器包括预处理子程序、输入缓冲区、扫描器及扫描缓冲区,所述预处理子程序剔除代码中无用的字符后,将处理后的输入字符放进扫描缓冲区,所述扫描器就从所述扫描缓冲区中识别代码中的符号。
根据本发明实施例的一种具体实现方式,所述设置用于解析所述新语意结构的特定解析程序,还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811406055.7/2.html,转载请声明来源钻瓜专利网。