| 前页 | 后页 | 
AST节点
在定义语法时,您将使用在Enterprise Architect代码工程中可以识别的AST节点和AST节点属性,这些属性是由attribute,attributeEx和node命令返回的。这些表中标识了节点和属性。其他任何代码工程都将被忽略。
文件节点
FILE节点代表一个文件。它没有映射到任何内容,但是包含所有必需的信息。
| 多重性/节点 | 描述 | 也可以看看 | 
|---|---|---|
| 0 .. * /包装 | 请参阅PACKAGE Node 。 | |
| 0 .. * / CLASS | 请参阅CLASS Node 。 | |
| 0 .. * /导入 | ||
| 0 .. * /评论 | 作为跳过规则一部分的字段标签将位于根级别;代码生成器会根据相对于节点的位置查找此类注释。 | |
| 0..1 / INSERT_POSITION | 这给出了可以将新的类,包和方法实现插入文件的位置。如果找不到,代码生成器将在代码中找到最后一项后立即自动插入新项。 | 
包节点
PACKAGE节点对应于文件中的名称空间或等效名称。使用“每个命名空间的程序包”导入时, Enterprise Architect将为此直接在导入下创建一个程序包,并将所有类放入其中。当不导入名称空间时, Enterprise Architect会在此点下查找类,但不会对此节点执行任何操作。
此外,如果您在启用了命名空间的情况下进行生成(请参见通用语言的“代码选项”主题),则生成的类将与代码中的类不匹配,除非它们处于相同的Package结构下。
包含在节点中:FILE
| 多重性/节点 | 描述 | 也可以看看 | 
|---|---|---|
| 1 /名 | 请参阅NAME节点 。 | |
| 0 .. * / CLASS | 请参阅CLASS Node 。 | |
| 0 .. * /包装 | 包节点 | |
| 0..1 / OPEN_POSITION | 给出Package主体打开的位置。这也可以用作插入位置。 | |
| 0..1 / INSERT_POSITION | 给出可以在其中将新的类和程序包插入文件的位置。如果找不到,代码生成器将在代码中找到最后一项后立即自动插入新项。 | |
| 0..1 /抑制 | 防止在插入此Package时缩进。 | 
CLASS / INTERFACE节点
CLASS(或INTERFACE)节点在代码生成中最重要。它作为类(或接口)对象引入。
参见DECLARATION 类和BODY类 。
包含在以下节点中:FILE,PACKAGE,BODY类
CLASS声明
包含在节点中:CLASS / INTERFACE
| 多重性/节点 | 描述 | 也可以看看 | 
|---|---|---|
| 1 /名 | 请参阅NAME节点 。 | |
| 0 .. * /父母 | 请参阅父节点 。 | |
| 0 .. * / TAG | 请参阅TAG节点 。 | |
| 0..1 /说明 | 请参见DESCRIPTION Node 。 | |
| 1 /名 | 类的名称。如果存在节点NAME,它将覆盖此属性。 | |
| 0..1 /范围 | 该类的UML范围-公共,私有,受保护或打包。 | |
| 0..1 /抽象 | 如果存在,则表示这是一个抽象类。 | |
| 0..1 /版本 | 类的版本。 | |
| 0..1 /立体声 | Enterprise Architect应该分配给类的Enterprise Architect型。这不支持多种构造型。 | |
| 0..1 / ISLEAF | ||
| 0..1 /多重性 | ||
| 0..1 /语言 | 通常,您不需要设置此项。 | |
| 0..1 /注意 | 通常不使用,因为该类上方的注释已解决该问题。 | |
| 0..1 /别名 | ||
| 0 .. * /宏 | 添加一个编号的标记值, Enterprise Architect可以使用它来往返宏。 | 
类BODY节点
包含在节点中:CLASS / INTERFACE
| 多重性/节点 | 描述 | 也可以看看 | 
|---|---|---|
| 0 .. * /方法 | 请参见METHOD节点 。 | |
| 0 .. * /属性 | 请参阅ATTRIBUTE Node 。 | |
| 0 .. * / FIELD | 请参见FIELD节点 。 | |
| 0 .. * / CLASS | 请参阅CLASS Node 。 | |
| 0 .. * /范围 | 请参阅SCOPE节点 。 | |
| 0 .. * /属性 | ||
| 0 .. * / TAG | 请参阅TAG节点 。 | |
| 0 .. * /父母 | 请参阅父节点 。 | |
| 0..1 / OPEN_POSITION | 给出Class正文打开的位置。这也可以用作插入位置。 | |
| 0..1 / INSERT_POSITION | 给出可以将新的Class成员插入文件的位置。如果找不到,代码生成器将在代码中找到最后一项后立即自动插入新项。 | 
范围节点
这是类似于C ++的语言的可选功能,这些语言具有指定元素范围的块。该语言需要指定一个名称,该名称用于Block中所有元素的范围。在所有其他方面,它的行为与Class BODY节点相同。
包含在节点中:BODY类
| 多重性/节点 | 描述 | 
|---|---|
| 1 /名 | 用作范围内包含的所有方法和属性的范围。 | 
方法节点
包含在节点中:类BODY,SCOPE
| 多重性/节点 | 描述 | 
|---|---|
| 1 /方法声明 | 请参见方法DECLARATION节点 。 | 
方法声明节点
包含在节点中:METHOD
| 多重性/节点 | 描述 | 也可以看看 | 
|---|---|---|
| 0..1 / TYPE | 请参阅TYPE节点 。 | |
| 0 .. * /参数 | 请参阅PARAMETER节点 。 | |
| 0 .. * / TAG | 参见“ 标记节点” 。 | |
| 0..1 /说明 | 请参见DESCRIPTION Node 。 | |
| 0..1 /多参数 | 支持Delphi的参数列表声明样式。这等效于FIELD。 | |
| 1 /名 | ||
| 0..1 / TYPE | ||
| 0..1 /范围 | ||
| 0..1 /抽象 | ||
| 0..1 /立体声 | ||
| 0..1 /静态 | ||
| 0..1 / CONST或CONSTANT | ||
| 0..1 /纯 | ||
| 0..1 /查询 | ||
| 0..1 /阵列 | ||
| 0..1 /同步 | ||
| 0 .. * /宏 | ||
| 0..1 / CSHARPIMPLEMENTS | 指定C#的特殊行为。 | |
| 0..1 /行为 | 使用行为为Aspect J提供支持。 | |
| 0..1 /显示行为 | 使用行为提供对Aspect J的支持,并在图表上显示经过逆向工程的行为。 | 
属性节点
包含在节点中:类BODY,SCOPE
| 多重性/节点 | 描述 | 也可以看看 | 
|---|---|---|
| 1 /类型 | 请参阅TYPE节点 。 | |
| 0 .. * / TAG | 请参阅TAG节点 。 | |
| 0..1 /说明 | 请参见DESCRIPTION Node 。 | 描述节点 | 
| 1 /名 | ||
| 0..1 / TYPE | ||
| 0..1 /范围 | ||
| 0..1 /默认 | ||
| 0..1 /容器或阵列 | ||
| 0..1 /包含 | 参考或价值。 | |
| 0..1 /立体声 | ||
| 0..1 /静态 | ||
| 0..1 / CONST或CONSTANT | ||
| 0..1 /订购 | ||
| 0..1 /低限 | ||
| 0..1 /高音 | ||
| 0..1 /瞬态或波动 | 
FIELD节点
一个字段对应一个中的多个属性声明。在声明程序中未定义但在字段本身中定义的任何内容都将为每个声明符设置。字段支持属性中支持的所有内容。如果未找到声明符,则其作用与属性相同。
包含在节点中:类BODY,SCOPE
| 多重性/节点 | 描述 | 也可以看看 | 
|---|---|---|
| 0 .. * /声明符 | 请参阅ATTRIBUTE Node 。 | 
参数节点
包含在节点中:方法DECLARATION,TEMPLATE
| 多重性/节点 | 描述 | 也可以看看 | 
|---|---|---|
| 1 /类型 | 请参阅TYPE节点 。 | |
| 0 .. * / TAG | 请参阅TAG节点 。 | |
| 0..1 /说明 | 请参见DESCRIPTION Node 。 | |
| 0..1 /名称 | ||
| 0..1 / TYPE | ||
| 0..1 /种类 | 预期是进,出,出或返回。 | |
| 0..1 /默认 | ||
| 0..1 /固定 | ||
| 0..1 /阵列 | 
NAME节点
包含在节点中:包,类声明
| 多重性/节点 | 描述 | 
|---|---|
| 1 /名 | |
| 0 .. * /合格者 | |
| 0 .. * / NAMEPART | 替代使用NAME和QUALIFIER的方法。一串值,除最后一个用作限定符外,所有值。最后一个用作名称。 | 
TYPE节点
包含在节点中:方法DECLARATION,ATTRIBUTE,PARAMETER
| 多重性/节点 | 描述 | 
|---|---|
| 0..1 /模板 | 模板的整个文本就是类型的名称。 仅在NAME未定义时使用。 请参阅TEMPLATE节点 。 | 
| 1 /名 | |
| 0 .. * /合格者 | |
| 0 .. * / NAMEPART | 替代使用NAME和QUALIFIER的方法。一串值,除最后一个用作限定符外,所有值。最后一个用作名称。 | 
模板节点
包含在节点中:TYPE
| 多重性/节点 | 描述 | 也可以看看 | 
|---|---|---|
| 0 .. * /参数 | 请参阅PARAMETER节点 。 | |
| 1 /名 | 
父节点
包含在节点中:类DECLARATION
| 多重性/节点 | 描述 | 
|---|---|
| 0..1 / TYPE | 具有值Parent,Implements或VirtualP。 | 
| 1 /名 | |
| 0 .. * /合格者 | |
| 0 .. * / NAMEPART | 替代使用NAME和QUALIFIER的方法。一串值,除最后一个用作限定符外,所有值。最后一个用作名称。 | 
| 0..1 /说明 | 
TAG节点
包含在节点中:类DECLARATION,方法DECLARATION,ATTRIBUTE,PARAMETER
| 多重性/节点 | 描述 | 
|---|---|
| 1 /名 | |
| 0 .. * / VALUE | |
| 0..1 /备忘录 | |
| 0..1 / NOMEMO | |
| 0..1 /组 | 
描述节点
包含在节点中:类DECLARATION,方法DECLARATION,ATTRIBUTE,PARAMETER
| 多重性/节点 | 描述 | 
|---|---|
| 0 .. * / VALUE | 
