[發明專利]LPC靜態代碼檢查方法、裝置和系統有效
| 申請號: | 201510836869.4 | 申請日: | 2015-11-25 |
| 公開(公告)號: | CN105404584B | 公開(公告)日: | 2018-12-11 |
| 發明(設計)人: | 汪承佳 | 申請(專利權)人: | 廣州博冠信息科技有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 深圳新創友知識產權代理有限公司 44223 | 代理人: | 江耀純 |
| 地址: | 510663 廣東省廣州市天*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | lpc 靜態 代碼 檢查 方法 裝置 系統 | ||
1.一種LPC靜態代碼檢查方法,其特征在于,包括:
獲取待檢查的LPC文件及公用頭文件;
利用預先生成的詞法分析器和語法分析器對待檢查的LPC文件及公用頭文件進行詞法分析和語法分析,并構建所述LPC文件的抽象語法樹;
在對所述LPC文件進行語法分析并構建抽象語法樹的過程中,遍歷所述抽象語法樹,從所述LPC文件中提取需要檢查的程序關鍵信息;其中,所述程序關鍵信息為預先設定的LPC信息類;
對所述程序關鍵信息進行預處理;
利用所述詞法分析器和所述語法分析器對預處理后的程序關鍵信息進行詞法分析和語法分析。
2.如權利要求1所述的LPC靜態代碼檢查方法,其特征在于,在所述利用預先生成的詞法分析器和語法分析器對待檢查的LPC文件及公用頭文件進行詞法分析和語法分析之前,還包括:
根據預先編寫的LPC語法描述文件利用語言識別工具ANTLR生成所述詞法分析器和所述語法分析器。
3.如權利要求1所述的LPC靜態代碼檢查方法,其特征在于,所述遍歷所述抽象語法樹,從所述LPC文件中提取需要檢查的程序關鍵信息,具體為:
在對所述LPC文件進行語法分析并構建抽象語法樹的過程中,遍歷所述抽象語法樹,從所述LPC文件中提取需要檢查的程序關鍵信息。
4.如權利要求1所述的LPC靜態代碼檢查方法,其特征在于,所述程序關鍵信息包括函數定義、函數聲明、宏定義函數和引擎函數中的一種或多種組合。
5.如權利要求1所述的LPC靜態代碼檢查方法,其特征在于,所述對所述程序關鍵信息進行預處理,具體為:
判斷所述程序關鍵信息是否已被執行詞法分析和語法分析;
若是,則跳過所述程序關鍵信息;
若否,則對所述程序關鍵信息進行預處理。
6.如權利要求1所述的LPC靜態代碼檢查方法,其特征在于,所述對所述程序關鍵信息進行預處理,具體為:
對所述程序關鍵信息的進行展開。
7.如權利要求1所述的LPC靜態代碼檢查方法,其特征在于,在所述利用所述詞法分析器和所述語法分析器對預處理后的程序關鍵信息進行詞法分析和語法分析之后,還包括:
對檢查結果進行顯示;其中,所述檢查結果包含出錯的分支、出錯的文件、出錯的行號、出錯的信息、出錯文件的最后修改作者和出錯文件的最后修改時間中的一種或多種組合。
8.如權利要求7所述的LPC靜態代碼檢查方法,其特征在于,所述LPC靜態代碼檢查方法還包括:
將所述檢查結果通過郵件發送到指定的郵箱。
9.如權利要求1~8任一項所述的LPC靜態代碼檢查方法,其特征在于,所述獲取待檢查的LPC文件及公用頭文件,具體為:
接收待檢查文件的路徑或者目錄;
根據需要檢查的文件類型,從所述路徑或者目錄下查找LPC文件及公用頭文件,形成待檢查文件的初步列表;
對所述初步列表中重復的文件進行去重處理,并根據預先設置的忽略文件列表對所述初步列表中需要忽略的文件進行忽略處理,獲取所述待檢查的LPC文件及公用頭文件。
10.一種LPC靜態代碼檢查方法,其特征在于,包括:
接收客戶端發送的對待檢查文件進行靜態代碼檢查的請求;
將與所述請求對應的靜態代碼檢查任務分發給代碼檢查服務器;觸發所述代碼檢查服務器通過如權利要求1~9任一項所述的LPC靜態代碼檢查方法對所述待檢查文件進行靜態代碼檢查。
11.如權利要求10所述的LPC靜態代碼檢查方法,其特征在于,所述將與所述請求對應的靜態代碼檢查任務分發給代碼檢查服務器,具體為:
根據所述待檢查文件所屬的代碼倉庫的類型、所述待檢查文件所屬的代碼分支或者所述靜態代碼檢查任務的類型,將所述靜態代碼檢查任務分發給不同的代碼檢查服務器。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣州博冠信息科技有限公司,未經廣州博冠信息科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510836869.4/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:基于異山梨糖醇的聚碳酸酯的穩定化
- 下一篇:用于頭發造型的配件





