[發(fā)明專利]一種腳本引擎接口抽象層及其應(yīng)用方法在審
| 申請?zhí)枺?/td> | 201810515982.6 | 申請日: | 2018-05-25 |
| 公開(公告)號(hào): | CN108874374A | 公開(公告)日: | 2018-11-23 |
| 發(fā)明(設(shè)計(jì))人: | 陳建華;凌華彬 | 申請(專利權(quán))人: | 廈門雅基軟件有限公司 |
| 主分類號(hào): | G06F8/30 | 分類號(hào): | G06F8/30 |
| 代理公司: | 北京聯(lián)瑞聯(lián)豐知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11411 | 代理人: | 張清彥 |
| 地址: | 361000 福建省廈門*** | 國省代碼: | 福建;35 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 腳本引擎 抽象層 綁定 調(diào)用 計(jì)算機(jī)軟件 代碼編譯 腳本語言 面向?qū)ο?/a> 宏模塊 腳本層 映射表 腳本 適配 應(yīng)用 主流 升級 語言 保證 | ||
1.一種腳本引擎接口抽象層,其特征在于,包括宏模塊、腳本與C++對象映射表、ScriptEngine模塊、Value模塊、AutoHandleScope模塊、Class模塊、State模塊、Object模塊、HandleObject模塊,其中,
所述宏模塊用于解決不同腳本引擎回調(diào)函數(shù)參數(shù)類型和返回值類型不同的問題,不管底層使用什么引擎,開發(fā)者使用同一種回調(diào)函數(shù)的定義方式,定義完回調(diào)函數(shù)后,需要使用SE_BIND_XXX系列的宏對回調(diào)函數(shù)進(jìn)行包裝;
所述腳本與C++對象映射表用于查詢C++對象指針獲取對應(yīng)的腳本對象;
所述ScriptEngine模塊用于掌管腳本引擎的初始化、銷毀、重啟、C++模塊注冊、加載腳本、強(qiáng)制垃圾回收、腳本異常清理以及是否啟用調(diào)試器;
所述Value模塊為腳本變量在C++層的引用;
所述Object模塊保存了對腳本對象的弱引用;
所述HandleObject模塊是一個(gè)輔助類,用于更加簡單地管理Object模塊中手動(dòng)創(chuàng)建對象的釋放、root和unroot操作;
所述Class模塊用于暴露C++類到腳本環(huán)境中,Class類型創(chuàng)建后,不需要手動(dòng)釋放內(nèi)存,其占用內(nèi)存會(huì)被抽象層自動(dòng)處理;
所述AutoHandleScope模塊,其只在V8引擎上有實(shí)現(xiàn),抽象層適配的其它腳本引擎目前都只是空實(shí)現(xiàn)這個(gè)類型;
所述State模塊作為綁定回調(diào)中的一個(gè)上下文對象,通過State模塊可以取得當(dāng)前的C++對象指針、se::Object對象指針、參數(shù)列表、返回值引用。
2.一種如權(quán)利要求1所述的一種腳本引擎接口抽象層的應(yīng)用方法,其特征在于,設(shè)定腳本相關(guān)操作的C++回調(diào)函數(shù),在回調(diào)函數(shù)中關(guān)聯(lián)C++對象,具體步驟如下:
步驟1:獲取namepace對象;
步驟2:創(chuàng)建se::Class;
步驟3:為se::Class定義屬性與方法;
步驟4:注冊se::Class到腳本虛擬機(jī)中;
步驟5:獲取se::Class的proto對象;
步驟6:通過proto對象設(shè)置綁定類的靜態(tài)屬性與靜態(tài)方法;
步驟7:清空異常。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于廈門雅基軟件有限公司,未經(jīng)廈門雅基軟件有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810515982.6/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 支持轉(zhuǎn)換引擎與映射規(guī)則相分離的模型轉(zhuǎn)換框架及其方法
- Widget引擎中使用第三方引擎解析腳本文件的方法和裝置
- 基于lua腳本交互信息的方法、Web引擎和嵌入式終端
- Widget引擎加載腳本插件的方法及Widget引擎
- 調(diào)用動(dòng)態(tài)鏈接庫的方法和裝置
- 用于隱私保護(hù)的具有雙腳本引擎的瀏覽器
- 一種腳本混淆方法及系統(tǒng)
- 腳本的加載控制方法及裝置
- 一種業(yè)務(wù)處理方法、裝置及電子設(shè)備和存儲(chǔ)介質(zhì)
- 基于解釋型語言的跨平臺(tái)通用協(xié)議解析方法、設(shè)備和介質(zhì)
- IDL調(diào)用裝置及調(diào)用方法
- 調(diào)用方法及調(diào)用系統(tǒng)
- 一種服務(wù)調(diào)用方法及裝置
- 服務(wù)調(diào)用方法、服務(wù)調(diào)用裝置及服務(wù)調(diào)用系統(tǒng)
- 組件調(diào)用方法、裝置及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 身份驗(yàn)證方法及裝置
- 系統(tǒng)調(diào)用處理方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)調(diào)用方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 一種微服務(wù)請求重試的方法及終端
- 業(yè)務(wù)數(shù)據(jù)的處理方法、裝置及系統(tǒng)





