一种语言转换方法、装置、电子设备及存储介质制造方法及图纸

技术编号:34004710 阅读:33 留言:0更新日期:2022-07-02 13:03
本公开关于一种语言转换方法、装置、电子设备及存储介质,包括:获取并解析待处理文件,生成待处理文件的语法树;在语法树中,由满足标注条件的待标注节点逐级向上查找目标节点,目标节点对应于待处理文件中的类声明或类表达式;在目标节点的主体信息中不包括待标注节点的名称的情况下,获取待标注节点的目标属性信息;根据目标属性信息,在语法树中为目标节点添加子节点,生成子节点的声明信息,将声明信息插入目标节点的主体信息,得到更新后的语法树;根据更新后的语法树,生成目标文件。这样,通过对语法树中节点的分析,可以尽可能多的推断和标注类相关的语言结构的类型信息,大大节省了手动迁移的时间和人力成本。大节省了手动迁移的时间和人力成本。大节省了手动迁移的时间和人力成本。

【技术实现步骤摘要】
一种语言转换方法、装置、电子设备及存储介质


[0001]本公开涉及计算机领域,尤其涉及一种语言转换方法、装置、电子设备及存储介质。

技术介绍

[0002]为了计算机项目的可持续迭代发展,将一种语言的文件(我们可称为第一文件)转换成另一种语言的文件(我们可称为第二文件)是非常有必要的。目前,第一文件转换为第二文件的方式通常是将第一文件的后缀名修改为第二文件的后缀名。
[0003]专利技术人发现上述方式存在着问题:得到的第二文件无法通过第二文件的语言校验,很多工作仍然需要人工完成,需要投入的人力和时间成本非常高,存在大量重复机械的工作,容易出现疏漏差错。

技术实现思路

[0004]本公开提供一种语言转换方法、装置、电子设备及存储介质,以至少解决相关技术中需要投入的人力和时间成本非常高,存在大量重复机械的工作,容易出现疏漏差错的问题。本公开的技术方案如下:
[0005]根据本公开实施例的第一方面,提供了一种语言转换方法,包括:
[0006]获取并解析待处理文件,生成所述待处理文件的语法树,所述待处理文件为第一语本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种语言转换方法,其特征在于,包括:获取并解析待处理文件,生成所述待处理文件的语法树,所述待处理文件为第一语言文件,所述语法树中包括多个节点,所述节点与所述待处理文件所包括的语言结构一一对应;在所述语法树中,由满足标注条件的待标注节点逐级向上查找目标节点,所述目标节点对应于所述待处理文件中的类声明或类表达式;在所述目标节点的主体信息中不包括所述待标注节点的名称的情况下,获取所述待标注节点的目标属性信息,所述目标属性信息用于指示所述待标注节点的父节点的类型;根据所述目标属性信息,在所述语法树中为所述目标节点添加子节点,生成所述子节点的声明信息,将所述声明信息插入所述目标节点的主体信息,得到更新后的语法树;根据所述更新后的语法树,生成目标文件,所述目标文件为第二语言文件。2.根据权利要求1所述的语言转换方法,其特征在于,所述在所述语法树中,由满足标注条件的待标注节点逐级向上查找目标节点,包括:遍历所述语法树中的节点,若任一节点的类型为成员表达式、所述任一节点对应的对象节点的类型为执行上下文表达式、且所述任一节点对应的属性节点的类型为标识符,则将所述任一节点作为待标注节点,由所述待标注节点逐级向上查找目标节点。3.根据权利要求1所述的语言转换方法,其特征在于,所述在所述语法树中,由满足标注条件的待标注节点逐级向上查找目标节点,包括:在所述语法树中,获取满足标注条件的待标注节点的路径信息;根据所述路径信息,由所述待标注节点逐级向上查询父节点,若查询到的任一父节点的类型为类声明或类表达式,则将所述任一父节点作为目标节点。4.根据权利要求3所述的语言转换方法,其特征在于,所述方法还包括:若查询到的任一父节点的类型为函数声明或函数表达式,或,若查询到的父节点的类型均不是类声明或类表达式,判定不存在所述待标注节点对应的目标节点。5.根据权利要求1所述的语言转换方法,其特征在于,在所述在所述语法树中,由满足标注条件的待标注节点逐级向上查找目标节点之后,所述方法还包括:获取所述目标节点的主体信息,所述主体信息中包括目标数组,所述目标数组中的每一个元素对应于所述目标节点对应的类所包括的任一方法或属性,每个元素具有对应的元素键值;在不存在与所述待标注节点的目标键值对应的元素键值时,确定在所述目标节点的主体信息中不包括所述待标注节点的名称,所述目标键值为所述待标注节点对应的属性节点的名称字段。6.根据权利要求1所述的语言转换方法,其特征在于,所述根据所述目标属性信息,在所述语法树中为所述目标节点添加子节点,生成所述子节点的声明信息,包括:若所述目标属性信息为第一预设字段,则在所述语法树中为所述目标节点...

【专利技术属性】
技术研发人员:李硕张驰
申请(专利权)人:北京达佳互联信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1