[發明專利]代碼語言轉換方法、裝置、電子設備及存儲介質在審
| 申請號: | 202110451006.0 | 申請日: | 2021-04-25 |
| 公開(公告)號: | CN113138767A | 公開(公告)日: | 2021-07-20 |
| 發明(設計)人: | 何子南;王凱;邢培康;李炯 | 申請(專利權)人: | 中國工商銀行股份有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41;G06F8/51 |
| 代理公司: | 中科專利商標代理有限責任公司 11021 | 代理人: | 周天宇 |
| 地址: | 100140 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 代碼 語言 轉換 方法 裝置 電子設備 存儲 介質 | ||
1.一種代碼語言轉換方法,包括:
獲取第一代碼語言的第一源代碼文本;
確定所述第一源代碼文本包含的至少一種類型的語言對象;
將每種所述語言對象解析成對應的序列化對象;
基于第二代碼語言的語法規則,將所有所述序列化對象編譯為第二代碼語言。
2.根據權利要求1所述的方法,其中,所述將每種所述語言對象解析成對應的序列化對象,包括:
解析每種所述語言對象,得到每種所述語言對象包含的數據結構;
將所有所述數據結構分別轉化為對應的序列化對象。
3.根據權利要求1所述的方法,其中,所述確定所述第一源代碼文本包含的至少一種類型的語言對象,包括:
依次確定所述第一源代碼文本中每條代碼語言的語言類型;
統計同一語言類型的代碼語言,得到至少一種類型的語言對象。
4.根據權利要求3所述的方法,其中,所述確定所述第一源代碼文本包含的至少一種類型的語言對象,還包括:
當無法確定所述第一源代碼文本中代碼語言的語言類型時,將所述代碼語言標記為特定語言類型;
統計所述特定語言類型的代碼語言,得到特定語言對象。
5.根據權利要求1所述的方法,其中,所述語言對象為SQL對象,所述基于第二代碼語言的語法規則,將所有所述序列化對象編譯為第二代碼語言,包括:
判斷所述SQL對象對應的序列化對象是否包含游標;
若所述SQL對象對應的序列化對象不包含游標,則按照所述第二代碼語言的SQL規則,將所述序列化對象編譯為第二代碼語言;
若所述SQL對象對應的序列化對象包含游標,則使用List對象將所述序列化對象編譯為第二代碼語言,所述List對象用于模擬游標動作。
6.根據權利要求1或2所述的方法,其中,所述語言對象為Record對象,所述將每種所述語言對象解析成對應的序列化對象,包括:
通過Record解析器和Dataitem解析器解析所述Record對象,得到Record序列化對象,所述Record序列化對象包含數據結構和字段信息。
7.根據權利要求1或2所述的方法,其中,所述語言對象為Program對象,所述將每種所述語言對象解析成對應的序列化對象,包括:
通過Program解析器解析所述Program對象,得到Program序列化對象,所述Program序列化對象包含程序屬性、入口函數定義和數據結構。
8.根據權利要求1或2所述的方法,其中,所述語言對象為Function對象,所述將每種所述語言對象解析成對應的序列化對象,包括:
通過Function解析器解析所述Function對象,得到Function序列化對象,所述Function序列化對象包含的語法樹結構。
9.一種代碼語言轉換裝置,包括:
獲取模塊,用于獲取第一代碼語言的第一源代碼文本;
確定模塊,用于確定所述第一源代碼文本包含的至少一種類型的語言對象;
解析模塊,用于將每種所述語言對象解析成對應的序列化對象;以及
編譯模塊,用于基于第二代碼語言的語法規則,將所有所述序列化對象編譯為第二代碼語言。
10.根據權利要求9所述的裝置,其中,所述解析模塊包括:
第一解析單元,用于解析每種所述語言對象,得到每種所述語言對象包含的數據結構;
轉化單元,用于將所有所述數據結構分別轉化為對應的序列化對象。
11.根據權利要求9所述的裝置,其中,所述確定模塊包括:
確定單元,用于依次確定所述第一源代碼文本中每條代碼語言的語言類型;
第一統計單元,用于統計同一語言類型的代碼語言,得到至少一種類型的語言對象。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國工商銀行股份有限公司,未經中國工商銀行股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110451006.0/1.html,轉載請聲明來源鉆瓜專利網。





