我有这样的要求,要使用 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 类。我的挑战是开发语法文件看起来像
(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 语法。