XDSL
- 文章作者: flytreeleft - flytreeleft@crazydan.org
- 文章链接: https://nop.crazydan.io/docs/manual/xlang/xdsl
- 版权声明: 本文章采用许可协议《署名 4.0 国际 (CC BY 4.0)》,转载或商用请注明文章来源及作者信息。
对 XDSL 结构的定义见 /nop/schema/xdsl.xdef。
定义
示例
属性
x:name
| 名称 | 类型 | 必填? |
|---|---|---|
| x:name | 否 | |
x:key-attr
| 名称 | 类型 | 必填? |
|---|---|---|
| x:key-attr | 否 | |
x:extends
| 名称 | 类型 | 必填? |
|---|---|---|
| x:extends | 否 | |
[仅根节点] 当前 DSL 所要继承的基础模型的 v-path 资源列表(以逗号分隔): 除普通的 v-path 资源路径以外,还可以在
注意:在生成 class 模型时, | ||
x:override
| 名称 | 类型 | 必填? |
|---|---|---|
| x:override |
| 否 |
x:prototype
| 名称 | 类型 | 必填? |
|---|---|---|
| x:prototype | 否 | |
[仅兄弟节点] 兄弟节点之间通过
注意:x:extends 是针对不同 DSL 文件之间的相同节点(即,定位坐标相同)的扩展,其通过 x:override 指定合并算子。 | ||
x:prototype-override
| 名称 | 类型 | 必填? |
|---|---|---|
| x:prototype-override |
| 否 |
用于指定基于 x:prototype 进行节点合并时所对应的合并算子: 假如有如下两个存在 x:extends 扩展关系的 DSL: button.styles.xui button-ext.styles.xui 若是要在 若是前者,则必须使用 button-ext.styles.xui 将会得到如下合并结果: button-ext.styles.xui 而若是子节点只在 | ||
节点
x:config
| 名称 | 类型 | 必须? |
|---|---|---|
| x:config | 否 | |
通过 <c:import/> 导入 Java 常量或 xlib 标签: button.xui 其只能定义在 DSL 根节点中,并在调用 被导入的 Java 常量和 xlib 标签可以在 <x:gen-extends/>、<x:post-extends/>、<x:post-parse/> 内直接使用: button.xui 也可以 button.xui
注意: 注意:<c:import/> 只有 | ||