freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

nesc語言參考手冊(編輯修改稿)

2025-07-26 08:04 本頁面
 

【文章內(nèi)容簡介】 事件, 或都是接口實例. 同時, 如果它們是指令(或事件),則它們必須有相同的函數(shù)名 如果他們是接口實例,它們必須有相同的接口類型。他們一定是有相同的接口類型的. 如果這些條件不能滿足, 就會發(fā)生編譯時間錯誤.。如果一個端點是參數(shù)化的,則另一個必須也是而且必須有相同的叁數(shù)類型。否則就會發(fā)生編譯時間錯誤.。相同的規(guī)格元素可以被多次連接,舉例來說.,:configuration C {provides interface X。} impementation {ponents C1, C2。X = 。X = 。} 在這個例子中,當(dāng)接口X中的命令被調(diào)用時,多次的配線將會導(dǎo)致接口X的事件的多重信號 (扇入),以及多個函數(shù)的執(zhí)行(扇出)。注意,當(dāng)二個結(jié)構(gòu)獨立地聯(lián)結(jié)相同接口的時候,多重配線也能發(fā)生,舉例來說.:configuration C { } configuration D { }impementation { impementation {ponents C1, C2。 ponents C3, C2。 。 。} } 所有的外部規(guī)格元素必須配線,否則發(fā)生編譯時間錯誤. 可是,內(nèi)部的規(guī)格元素可以不連接 (它們可能在另外一個結(jié)構(gòu)中配線,或者如果模塊有適當(dāng)?shù)哪J(rèn)事件或指令實現(xiàn),他們可以不配線). 隱含連接隱含連接可以寫成K1 K2 (=和是等價的). 該用法通過規(guī)格元素K1 (不妨K2)來引用規(guī)格元素 Y, (不妨 )形成一個合法聯(lián)結(jié)。如果能正確的引用Y,則連接建立,否則發(fā)生編譯時間錯誤。舉例來說:modue M1 { modue M2 {provides interface StdContro。 uses interface StdContro as SC。} ... } ...configuration C { }impementation {interface X { modue M {mand int f()。 provides interface X as P。event void g(int x)。 uses interface X as U。} provides mand void h()。} impementation { ... }configuration C {provides interface X。provides mand void h2()。}impementation {ponents M。X = 。 。h2 = 。}圖 1: 簡單的配線例子ponents M1, M2。 M1。} M1 . 是等價的。 配線語義我們首先撇開參數(shù)化接口討論配線語義. 節(jié)將討論參數(shù)化接口。最后,第 節(jié)敘述整體上而言,程序配線聲明上的要求。我們將會用到圖1中的簡單程序作為我們運行的例子。我們根據(jù)中間函數(shù)定義配線的意義。每個組件的每個指令或事件都有中間函數(shù). 舉例來說,在圖 1 中,模塊M 有中間函數(shù) , , , , . 在例子中,我們以其組件,任意接口實例名,及函數(shù)名為基礎(chǔ)命名中間函數(shù)。中間函數(shù)不是使用就是提供。每個中間函數(shù)接受與組件說明中相應(yīng)指令或事件相同的自變量。中間函數(shù)體I是調(diào)用(執(zhí)行系列)其它中間函數(shù)的列表。I 通過程序配線說明連接到其它中間函數(shù) 。 返回結(jié)果列表,(列表元素類型是相應(yīng)指令或事件返回給I的結(jié)果類型),列表通過連接調(diào)用中間函數(shù)返回結(jié)果構(gòu)成。返回空值的中間函數(shù)適合不相連接的指令或事件;返回兩個或以上值的中間函數(shù)適合“扇出”。nesC允許在沒有直接中間函數(shù)的情況下編譯,所以本節(jié)中描述的行為沒有運行開銷,實際的函數(shù)調(diào)用需要參數(shù)化的指令或事件。中間函數(shù)和結(jié)構(gòu) 一個結(jié)構(gòu)的配線說明指定中間函數(shù)體。我們首先擴(kuò)展配線說明到中間函數(shù)而不限于規(guī)格元素,并取消配線說明中= 和的區(qū)別。我們用 I1 I2 表示中間函數(shù)I1 和I2之間的連結(jié)。舉例來說,圖 1中的結(jié)構(gòu)C 敘述了下列中間函數(shù)連接: 在結(jié)構(gòu) C 的連接I1 I2中,二個中間函數(shù)之一是被調(diào)用的,另一個是調(diào)用者。如果下列任一條件成立(我們使用內(nèi)部或外部的用辭作規(guī)格說明并不妨礙結(jié)構(gòu) C包含連接),則I1(同樣地,I2)是被調(diào)用的: 如果 I1 符合一件被提供指令或事件的內(nèi)部規(guī)格元素. 如果 I1 符合一件被使用指令或事件的外部規(guī)格元素. 如果 I1 符合一個接口實例X 的指令,而X是內(nèi)部的且被提供或外部的且被使用的規(guī)格元素. 如果 I1 符合一個接口實例X 的事件,而X是外部的且被提供或內(nèi)部的且被使用的規(guī)格元素.如果這些情況沒有一個成立,則I1 調(diào)用者。 節(jié)的配線規(guī)則確保一個連接 I1I2 不會同時連接二個調(diào)用者或二個被調(diào)用者。圖1的結(jié)構(gòu) C 中, , , , 是調(diào)用者而 , , , 是被調(diào)用者。 ,等等。中間函數(shù)和模塊 模塊中的C代碼調(diào)用中間函數(shù),或被中間函數(shù)調(diào)用。模塊M中提供指令或事件a的中間函數(shù)I 包含一個單獨調(diào)用以運行M中的a。其結(jié)果是一個單獨的調(diào)用返回列表。表達(dá)式ca a(e1, . . . , en)性質(zhì)如下: 自變量e1, . . . , en 被賦值為v1, . . . , vn.。 a對應(yīng)的中間函數(shù)被以自變量v1, . . . , vn調(diào)用,返回結(jié)果列表. 如果 =(w)( 一個獨立列表),調(diào)用的返回結(jié)果就是 w.如果 =(w1,w2, . . . ,wm) (二或更多的元素),調(diào)用的結(jié)果仰賴于a的返回類型t。如果t=void,則結(jié)果是void。否則,t 一定有一聯(lián)合函數(shù)c( 第 ),否則發(fā)生編譯時間錯誤。聯(lián)合函數(shù)接受類型t 的兩個值并且返回一個類型t的結(jié)果。該調(diào)用的結(jié)果是c(w1, c(w2, . . . , c(wm?1,wm))) ( 注意中元素次序是任意的). ist of int () { ist of void (int x) { return ist(())。 ist of int r1 = (x)。} ist of int r1 = (x)。return ist concat(r1, r2)。}ist of int () { ist of void (int x) { return ()。 return ist((x))。} }ist of int () { ist of void (int x) { return ()。 return empty ist。} }ist of void () { ist of void () {return ()。 return ist(())。} } 圖 2: 圖1的中間函數(shù) 如果 為空則默認(rèn)以v1, . . . , vn,為自變量調(diào)用執(zhí)行a,并返回該調(diào)用結(jié)果。第 節(jié)表明如果為空且a沒有默認(rèn)實現(xiàn)則會發(fā)生一編譯 時間錯誤。信號表達(dá)式的規(guī)則是一樣的。 中間函數(shù)舉例 圖 2使用類C的語法演示了圖 1中組件產(chǎn)生的中間函數(shù),其中ist(x)產(chǎn)生一個包含X的獨立列表,空列表是表示含0個元素的列表的常量,連接列表如鎖鏈般連接兩個列表。, , ,調(diào)用模塊M中實現(xiàn)的指令和事件(未給出)。 配線和參數(shù)化函數(shù)如果組件K的一條指令或事件a帶有類型t1, . . . ,tn的接口叁數(shù),則對每一數(shù)組(v1 : t1, . . . , vn :tn)存在一個中間函數(shù)Ia,v1,...,vn 。在模塊中,如果中間函數(shù)Iv1,...,vn符合參數(shù)化的提供指令(或事件)a,則Iv1,...,vn中對a的實現(xiàn)的調(diào)用將傳遞v1, . . . , vn作為a的接口參數(shù)。下面是對表達(dá)式ca _[e01, . . . , e0m](e1, . . . , en)討論: 自變量e1, . . . , en被賦值為 v1, . . . , vn。 自變量e01, . . . , e0m被賦值為v01 , . . . , v0m。 v0i 對應(yīng)ti 類型, 這里t i 是a的第i個接口叁數(shù)的類型。 a對應(yīng)的中間函數(shù)Iv01 ,...,v0m被以參數(shù)v1, . . . , vn,調(diào)用,返回列表。 如果 有一個或更多的元素, 在非參數(shù)化的情形下產(chǎn)生調(diào)用結(jié)果 如果 為空,a的默認(rèn)實現(xiàn)會被以自變量v1, . . . , vn,,以接口參數(shù)值v01 , . . . , v0m調(diào)用,且返回該調(diào)用的結(jié)果。,則會產(chǎn)生編譯時間錯誤。信號表達(dá)式的規(guī)則是一樣的.配線說明中的一個端點關(guān)系到一參數(shù)化規(guī)格元素時,有二種情形: 端點指定叁數(shù)值 v1, . . . , vn。若端點符合指令或事件 a1, . . . ,am ,則相應(yīng)的中間函數(shù)為Ia1,v1,...,vn,. . . , Iam,v1,...,vn且配線方式不變。 端點未指定叁數(shù)值. 在這情況下,配線說明的兩個端點都對應(yīng)相同接口參數(shù)類型t1, . . . ,。 如果一個端點對應(yīng)指令或事件 a1, . . . , am 而另一端點對應(yīng)指令或事件 β1, . . . , βm,則對所有的1=i= m和所有的數(shù)組(w1 : t1, . . . ,wn : tn)有連接Iai,w1,...,wn Iβi,w1,...,wn (就是說., 端點是為所有對應(yīng)的叁數(shù)值連接的).。 應(yīng)用級的需求一個應(yīng)用的配線說明必須滿足兩個需求, 否則就會發(fā)生編譯時間錯誤: 沒有只包含中間函數(shù)的無限循環(huán). 在應(yīng)用模塊中的每個ca a ( 或signa a)表達(dá)式中:–如果調(diào)用是非參數(shù)化的:如果調(diào)用返回空的結(jié)果列表,則a一定有默認(rèn)實現(xiàn) (結(jié)果列表中元素個數(shù)只仰賴于配線)。–如果調(diào)用是參數(shù)化的:如果a的接口叁數(shù)的任何替代值都返回空結(jié)果列表,則a必定有默認(rèn)的實現(xiàn) (給定參數(shù)值數(shù)組的返回結(jié)果列表中元素數(shù)目只仰賴于配線)。注意這種情況不考慮用來在調(diào)用點敘述接口參數(shù)值的表達(dá)。該調(diào)用的特色是包含在幾個指令執(zhí)行間的運行時選擇——這是中間函數(shù)唯一的一處運行時開銷
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1