0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Macros如何協(xié)同工作

科技綠洲 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2023-09-20 14:06 ? 次閱讀

Macros

ObjectScript 還支持定義替換的宏。定義可以是一個(gè)值、整行代碼或(使用 ##continue 指令)多行。使用宏來確保一致性。例如:

#define StringMacro "Hello, World!"

write $$$StringMacro

Include Files

可以在例程中定義宏,并稍后在同一例程中使用它們。更常見的是,在中心位置定義它們。為此,需要?jiǎng)?chuàng)建并使用包含文件。包含文件定義宏并且可以包含其他包含文件。

這些代碼元素如何協(xié)同工作

可以混合使用 ObjectScript、Python、 SQL、類定義、宏、例程等的原因是 IRIS 不直接使用編寫的代碼。相反,當(dāng)編譯代碼時(shí),系統(tǒng)會生成它使用的較低級別的代碼。這是由 ObjectScript 引擎使用的 ObjectScriptOBJ 代碼,以及由 Python 引擎使用的 PythonPYC 代碼。

有多個(gè)步驟。無需詳細(xì)了解這些步驟,但最好記住以下幾點(diǎn):

  • 對于除 Python 方法之外的所有元素,類編譯器將類定義和 ObjectScript 代碼處理為 INT 代碼。 Python代碼被處理成PY代碼。

在某些情況下,編譯器會生成并保存您不應(yīng)編輯的其他類。例如,當(dāng)編譯定義 Web 服務(wù)和 Web客戶端的類時(shí),就會發(fā)生這種情況。

類編譯器還為每個(gè)類生成類描述符。系統(tǒng)代碼在運(yùn)行時(shí)使用它。

  • 對于 ObjectScript 代碼,預(yù)處理器(有時(shí)稱為宏預(yù)處理器或 MPP)使用包含文件并替換宏。它還處理例程中的嵌入式 SQL。

這些更改發(fā)生在臨時(shí)工作區(qū)中,并且代碼不會更改。

  • 其他編譯器為例程創(chuàng)建 INT 代碼。
  • INT 代碼和 PY 代碼是中間層,其中通過直接Global訪問來處理對數(shù)據(jù)的訪問。該代碼是人類可讀的。
  • INT代碼用于生成OBJ代碼,PY代碼用于生成PYC代碼。 IRIS 虛擬機(jī)使用此代碼。一旦將代碼編譯為 OBJPYC 代碼,代碼執(zhí)行就不再需要 INTPY 例程。
  • 編譯類后,可以將它們置于部署模式。 IRIS 有一個(gè)實(shí)用程序,可以刪除給定類的類內(nèi)部和中間代碼;可以在部署應(yīng)用程序時(shí)使用此實(shí)用程序。

如果檢查 IRIS 系統(tǒng)類,可能會發(fā)現(xiàn)某些類看不到,因?yàn)樗鼈兲幱诓渴鹉J健?/p>

注意:所有類定義和例程都與生成的代碼存儲在同一 IRIS 數(shù)據(jù)庫中。這一事實(shí)使代碼更易于管理。 IRIS 提供了一組強(qiáng)大的源代碼控制掛鉤, 開發(fā)人員已使用這些掛鉤多年。也可以使用這些掛鉤。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4788

    瀏覽量

    68616
  • 編譯
    +關(guān)注

    關(guān)注

    0

    文章

    657

    瀏覽量

    32872
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4797

    瀏覽量

    84690
收藏 人收藏

    評論

    相關(guān)推薦

    bgp配置實(shí)例講解 如何配置Cilium和BGP協(xié)同工作

    ? 背景 官方提供了多篇文檔說明如何配置 Cilium 和 BGP 協(xié)同工作,本文主要對以下部分功能進(jìn)行驗(yàn)證: Using BIRD to run BGP[1] Using kube-router
    的頭像 發(fā)表于 08-15 09:15 ?2085次閱讀
    bgp配置實(shí)例講解 如何配置Cilium和BGP<b class='flag-5'>協(xié)同工作</b>

    快速實(shí)現(xiàn)ARM和DSP的通信和協(xié)同工作

    快速實(shí)現(xiàn)ARM和DSP的通信和協(xié)同工作
    發(fā)表于 08-17 14:08

    雙核處理器ARM_DSP如何實(shí)現(xiàn)協(xié)同工作

    雙核處理器ARM_DSP如何實(shí)現(xiàn)協(xié)同工作
    發(fā)表于 08-17 14:26

    labview控制兩個(gè)儀器協(xié)同工作

    ,然后示波器采集,然后問示波器采集完了嗎,然后在運(yùn)動。請問這樣的程序怎么寫?我處理不好他們的協(xié)同工作,所以上網(wǎng)了希望得到大家的幫助。謝謝大家!
    發(fā)表于 05-04 18:25

    MSP430 可以與多大頻率的晶振協(xié)同工作

    除了 32.768kHz的晶振頻率,MSP430 還可以與多大頻率的晶振協(xié)同工作?
    發(fā)表于 12-29 17:06

    兩片單片機(jī)協(xié)同工作

    問一下通常的應(yīng)用中都有什么方式使兩片或多片430協(xié)同工作?
    發(fā)表于 01-19 19:27

    【鋯石A4 FPGA申請】多芯片協(xié)同工作的管理

    申請理由:項(xiàng)目描述:項(xiàng)目越做越大,使用一片芯片已無法勝任,那么多芯片的方案就必不可少了。例如ARM進(jìn)行人機(jī)交互與通訊,DSP進(jìn)行計(jì)算,51進(jìn)行底層硬件控制等等,那么多個(gè)芯片的協(xié)同工作就要有一個(gè)管理
    發(fā)表于 08-29 15:38

    ethernet和softap能否在43907平臺上協(xié)同工作

    “以太網(wǎng)”和“軟”可以在43707個(gè)平臺上協(xié)同工作嗎?因此,其他WiFi設(shè)備可以連接SoFAP(43907),并通過43907以太網(wǎng)連接到互聯(lián)網(wǎng)。SDK中有任何參考代碼嗎?我發(fā)現(xiàn)
    發(fā)表于 11-28 16:28

    SG3525的3腳和4腳是怎么協(xié)同工作的????

    SG3525的3腳和4腳是怎么協(xié)同工作的????
    發(fā)表于 01-16 18:28

    處理器在讀內(nèi)存的過程中,CPU核、cache、MMU如何協(xié)同工作?

    處理器中斷處理的過程是怎樣的?處理器在讀內(nèi)存的過程中,CPU核、cache、MMU如何協(xié)同工作
    發(fā)表于 10-18 08:57

    基于CSCW和多Agent的電網(wǎng)調(diào)度協(xié)同工作模型

    分析電網(wǎng)調(diào)度運(yùn)行管理系統(tǒng)的工作特點(diǎn),根據(jù)系統(tǒng)內(nèi)不同任務(wù)分工協(xié)作的要求,利用多Agent 技術(shù)將系統(tǒng)劃分成不同功能的模塊。提出了基于多Agent 的CSCW 環(huán)境下的一種電網(wǎng)調(diào)度協(xié)同工作
    發(fā)表于 05-28 10:57 ?0次下載
    基于CSCW和多Agent的電網(wǎng)調(diào)度<b class='flag-5'>協(xié)同工作</b>模型

    三個(gè)傳感器協(xié)同工作的智能狗碗

    電子發(fā)燒友網(wǎng)站提供《三個(gè)傳感器協(xié)同工作的智能狗碗.zip》資料免費(fèi)下載
    發(fā)表于 11-17 10:28 ?0次下載
    三個(gè)傳感器<b class='flag-5'>協(xié)同工作</b>的智能狗碗

    如何配置Cilium和BGP協(xié)同工作呢?

    官方提供了多篇文檔說明如何配置 Cilium 和 BGP 協(xié)同工作,本文主要對以下部分功能進(jìn)行驗(yàn)證
    的頭像 發(fā)表于 08-15 09:15 ?1833次閱讀
    如何配置Cilium和BGP<b class='flag-5'>協(xié)同工作</b>呢?

    三電系統(tǒng)是如何協(xié)同工作的?

    三電系統(tǒng)是如何協(xié)同工作的? 三電系統(tǒng)是指由汽車動力電池、動力電機(jī)和動力電控系統(tǒng)組成的新能源汽車動力系統(tǒng)。它在汽車工業(yè)領(lǐng)域內(nèi)得到了廣泛的應(yīng)用,成為推動汽車行業(yè)向新能源方向發(fā)展的關(guān)鍵技術(shù)之一。三電系統(tǒng)
    的頭像 發(fā)表于 01-18 16:37 ?897次閱讀

    SOLIDWORKS 2024:智能工作、協(xié)同工作

    隨著科技的飛速發(fā)展,工程設(shè)計(jì)軟件也在不斷迭代升級。SOLIDWORKS 2024作為工程設(shè)計(jì)領(lǐng)域的佼佼者,以其智能、協(xié)同的特性,為工程師們提供了一個(gè)全新的工作環(huán)境。
    的頭像 發(fā)表于 01-22 13:55 ?697次閱讀
    SOLIDWORKS 2024:智能<b class='flag-5'>工作</b>、<b class='flag-5'>協(xié)同工作</b>