簡體   English   中英

xTExt通用DSL

[英]xTExt generic DSL

我有一個這樣的要求要用XText開發

我有一組POJO類,(無法為此繪制圖表,希望這是清晰的enf)

( A_POJO )  ------- Level 1

( B_POJO extends A_POJO ) ------- Level 2
( C_POJO extends A_POJO ) ------- Level 2

( D_POJO extends C_POJO ) ------- Level 3
( E_POJO extends C_POJO ) ------- Level 3
( F_POJO extends C_POJO ) ------- Level 3

然后,在開發此DSL的Eclipse的類路徑中,將擁有這個POJO類。 和我的挑戰是developa語法文件看起來像

(B_POJO or child class of it) name=ID {
    [
        (C_POJO or child class of it) name=ID {Attribute of (C_POJO)}
        (C_POJO or child class of it) name=ID {Attribute of (C_POJO)}
        (C_POJO or child class of it) name=ID {Attribute of (C_POJO)}
        (C_POJO or child class of it) name=ID {Attribute of (C_POJO)}
        (C_POJO or child class of it) name=ID {Attribute of (C_POJO)}
    ]
}

樣品看起來像

User xx {
    [
        vField userName {length=25}
        vField firstName {length:50}
        vField otherNames {length:100}
        vField password {length:25}
        vField email {length:100}
    ]
}

對於從給定的POJO產生的這種動態工作,如何進行xText語法分析器確實適用。

您的問題不是很清楚,但是您所說的“ POJO類”是否是或可以轉化為由EMF生成的代碼,它來自XCore中表示的“元模型”,XCore是EMF Ecore的DSL。模型(您可以從現有的Java模型中導入...),那么您可能對您感興趣的位於https://github.com/vorburger/efactory的 EMF簡單對象表示法ESON(ex-EFactory)?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM