前页 | 后页 |
AST 节点
在定义语法时,您将使用可以在Enterprise Architect的代码工程中识别的 AST 节点和 AST 节点属性,以及由 attribute、attributeEx 和 node 命令返回的 AST 结果。这些库表中标识了节点和属性。在代码工程中,任何其他人都将被忽略。
文件节点
FILE 节点代表一个文件。它没有映射到任何东西,但包含所有必需的信息。
多重性/节点 |
描述 |
也见 |
---|---|---|
0..* / 包 |
请参阅PACKAGE节点。 |
|
0..* / 类 |
见CLASS节点。 |
|
0..* / 进口 |
表示导入的命名空间/包或等效项的节点。节点的 'NAME' 属性将是导入的命名空间/包的名称或等效名称。 |
|
0..* / 评论 |
作为跳过规则一部分的字段标签将在根级别;代码生成器通过相对于节点的位置查找此类注释。 |
|
0.. 1 / INSERT_POSITION |
这给出了可以将新类、包和方法实现插入文件的位置。如果没有找到,代码生成器会在代码中找到最后一项后立即自动插入新项。 |
包节点
PACKAGE 节点对应于文件中的命名空间或等效项。当使用“包per namespace”导入时, Enterprise Architect将直接在导入下创建一个包,并将所有类放在其中。当不导入命名空间时, Enterprise Architect将在这一点下寻找类,但它不会对这个节点做任何事情。
此外,如果您在启用命名空间的情况下生成(请参阅通用语言的代码选项帮助主题),除非它们位于相同的包结构下,否则生成的类将不匹配代码中的类。
包含在节点中:FILE
多重性/节点 |
描述 |
也见 |
---|---|---|
1 / 姓名 |
见NAME节点。 |
|
0..* / 类 |
见CLASS节点。 |
|
0..* / 包 |
子包节点。 |
包节点 |
0.. 1 / OPEN_POSITION |
给出包体打开的位置。这也可以用作插入位置。 |
|
0.. 1 / INSERT_POSITION |
给出新类和包可以插入文件的位置。如果没有找到,代码生成器会在代码中找到最后一项后立即自动插入新项。 |
|
0.. 1 / 抑制 |
插入此包时防止缩进。 |
CLASS/INTERFACE节点
CLASS(或 INTERFACE)节点是代码生成中最重要的节点。它作为类(或接口)对象引入。
参见类DECLARATION和类BODY 。
包含在节点中:FILE、PACKAGE、类BODY
类声明
包含在节点中:类/接口
多重性/节点 |
描述 |
也见 |
---|---|---|
1 / 姓名 |
见NAME节点。 |
|
0..* / 家长 |
请参见PARENT节点。 |
|
0..* / 标签 |
见TAG节点。 |
|
0.. 1 / 描述 |
见节点。 |
|
1 / 姓名 |
类的名称。如果有一个节点 NAME,那将覆盖这个属性。 |
|
0.. 1 / 范围 |
类的UML范围 - Public、Private、Protected 或包。 |
|
0.. 1 / 摘要 |
如果存在,则表明这是一个抽象类。 |
|
0.. 1 / 版本 |
类的版本。 |
|
0.. 1 / 刻板印象 |
Enterprise Architect应该分配给类的构造型。这不支持多种刻板印象。 |
|
0.. 1 / 岛 |
如果存在,则表明这是一个叶子/最终/密封类,不能被任何子类继承。 |
|
0.. 1 / 多重性 |
如果存在,则表示类的多样性。 |
|
0.. 1 / 语言 |
一般不需要设置。 |
|
0.. 1 / 注意 |
通常不使用,因为它在类上面的评论中得到解决。 |
|
0.. 1 / 别名 |
如果存在,则表示任何标识符的别名,例如命名空间、类或变量。 |
|
0..* / 宏 |
添加Enterprise Architect可用于round宏的编号标记值。 |
类BODY节点
包含在节点中:类/接口
多重性/节点 |
描述 |
也见 |
---|---|---|
0..* / 方法 |
请参见METHOD节点。 |
|
0..* / 属性 |
请参见ATTRIBUTE节点。 |
|
0..* / 场 |
见FIELD节点。 |
|
0..* / 类 |
见CLASS节点。 |
|
0..* / 范围 |
见SCOPE节点。 |
|
0..* / 属性 |
该节点表示类体的属性定义。 |
|
0..* / 标签 |
见TAG节点。 |
|
0..* / 家长 |
请参见PARENT节点。 |
|
0.. 1 / OPEN_POSITION |
给出类体打开的位置。这也可以用作插入位置。 |
|
0.. 1 / INSERT_POSITION |
给出新类成员可以插入文件的位置。如果没有找到,代码生成器会在代码中找到最后一项后立即自动插入新项。 |
SCOPE节点
对于具有指定元素范围的块的类似于 C++ 的语言,这是一个可选特征。语言需要指定一个名称,用于块中所有元素的范围。在所有其他方面,它的行为与类节点相同。
包含在节点中:类BODY
多重性/节点 |
描述 |
---|---|
1 / 姓名 |
用作范围内包含的所有方法和属性的范围。 |
METHOD节点
包含在节点中:类BODY、SCOPE
多重性/节点 |
描述 |
---|---|
1 / 方法声明 |
请参阅方法节点。 |
方法节点
包含在节点中:方法
多重性/节点 |
描述 |
也见 |
---|---|---|
0.. 1 / 类型 |
见TYPE节点。 |
|
0..* / 参数 |
请参见PARAMETER节点。 |
|
0..* / 标签 |
请参阅标记节点。 |
|
0.. 1 / 描述 |
见节点。 |
|
0.. 1 / 多参数 |
支持 Delphi 的参数列表样式的声明。这相当于 FIELD。 |
|
1 / 姓名 |
方法的名称。 |
|
0.. 1 / 类型 |
方法的返回类型。 |
|
0.. 1 / 范围 |
方法的UML范围 - Public、Private、Protected 或包。 |
|
0.. 1 / 摘要 |
如果存在,则表明该方法是抽象的。 |
|
0.. 1 / 刻板印象 |
Enterprise Architect应该分配给方法的构造型。这不支持多种刻板印象。 |
|
0.. 1 / 静态 |
如果存在,则表明该方法是静态的。 |
|
0.. 1 / 常数或常数 |
如果存在,则表明该方法是恒定的。 |
|
0.. 1 / 纯 |
如果存在,则表明该方法是纯方法。 |
|
0.. 1 / 查询 |
如果存在,则表明该方法是查询/只读的。 |
|
0.. 1 / 阵列 |
如果存在,则表明方法类型(返回类型)是一个数组。 |
|
0.. 1 / 同步 |
如果存在,则表明该方法是同步方法。 |
|
0..* / 宏 |
方法声明中指定的宏。 |
|
0.. 1 / CSHARPIMPLEMENTS |
指定 C# 的特殊行为。 |
|
0.. 1 / 行为 |
使用行为提供对 Aspect J的支持。 |
|
0.. 1 / 显示行为 |
提供对 Aspect J的支持,使用行为,并在图表上显示逆向工程行为。 |
ATTRIBUTE节点
包含在节点中:类BODY、SCOPE
多重性/节点 |
描述 |
也见 |
---|---|---|
1 / 类型 |
见TYPE节点。 |
|
0..* / 标签 |
见TAG节点。 |
|
0.. 1 / 描述 |
见节点。 |
描述节点 |
1 / 姓名 |
属性的名称。 |
|
0.. 1 / 类型 |
属性的类型。 |
|
0.. 1 / 范围 |
属性的UML范围 - Public、Private、Protected 或包。 |
|
0.. 1 / 默认 |
属性的默认值。 |
|
0.. 1 / 容器或数组 |
如果存在,则指示属性的容器。 |
|
0.. 1 / 遏制 |
参考或价值。 |
|
0.. 1 / 刻板印象 |
Enterprise Architect应该分配给属性的构造型。这不支持多种刻板印象。 |
|
0.. 1 / 静态 |
如果存在,则表明它是静态属性。 |
|
0.. 1 / 常数或常数 |
如果存在,则表明它是一个常量属性。 |
|
0.. 1 / 已订购 |
如果存在,则表明属性(值)是有序的。 |
|
0.. 1 / 低限 |
如果存在,则表示属性值的下边界。 |
|
0.. 1 / 高边界 |
如果存在,则表示属性值的较高边界。 |
|
0.. 1 / 瞬态或易失 |
如果存在,则表明该属性是瞬态的或易失的。 |
FIELD节点
A字段对应多个属性声明在一个。任何未在声明符中定义但在字段本身中定义的内容都将为每个声明符设置。字段中支持属性中支持的所有内容。如果没有找到声明符,那么这与属性的工作方式相同。
包含在节点中:类BODY、SCOPE
多重性/节点 |
描述 |
也见 |
---|---|---|
0..* / 声明者 |
请参见ATTRIBUTE节点。 |
PARAMETER节点
包含在节点中:方法声明、模板
多重性/节点 |
描述 |
也见 |
---|---|---|
1 / 类型 |
见TYPE节点。 |
|
0..* / 标签 |
见TAG节点。 |
|
0.. 1 / 描述 |
见节点。 |
|
0.. 1 / 名称 |
参数的名称。 |
|
0.. 1 / 类型 |
参数的类型。 |
|
0.. 1 / 种类 |
预计进入、退出、退出或返回。 |
|
0.. 1 / 默认 |
参数的默认值。 |
|
0.. 1 / 固定 |
如果存在,则表明该参数是固定的/恒定的。 |
|
0.. 1 / 阵列 |
如果存在,则表明参数类型是一个数组。 |
NAME节点
包含在节点中:PACKAGE,类DECLARATION
多重性/节点 |
描述 |
---|---|
1 / 姓名 |
名称部分。 |
0..* / 限定符 |
限定符部分。 |
0..* / 名称部分 |
使用 NAME 和 QUALIFIER 的替代方法。 A string ,除了最后一个作为限定符之外的所有值。最后一个作为名称。 |
TYPE节点
包含在节点中:方法声明、属性、参数
多重性/节点 |
描述 |
---|---|
0.. 1 / 模板 |
模板的整个文本是类型的名称。 仅在 NAME未定义使用。 见TEMPLATE节点。 |
1 / 姓名 |
名称部分。 |
0..* / 限定符 |
限定符部分。 |
0..* / 名称部分 |
使用 NAME 和 QUALIFIER 的替代方法。 A string ,除了最后一个作为限定符之外的所有值。最后一个作为名称。 |
TEMPLATE节点
包含在节点中:TYPE
多重性/节点 |
描述 |
也见 |
---|---|---|
0..* / 参数 |
请参见PARAMETER节点。 |
|
1 / 姓名 |
PARENT节点
包含在节点中:类声明
多重性/节点 |
描述 |
---|---|
0.. 1 / 类型 |
具有值 Parent、Implements 或 VirtualP。 |
1 / 姓名 |
父级的名称部分。 |
0..* / 限定符 |
Parent 的限定符部分。 |
0..* / 名称部分 |
使用 NAME 和 QUALIFIER 的替代方法。 A string ,除了最后一个作为限定符之外的所有值。最后一个作为名称。 |
0.. 1 / 实例化 |
如果存在,则表示模板参数的实例化。 |
TAG节点
包含在Nodes中:类DECLARATION、Method DECLARATION、ATTRIBUTE、PARAMETER
多重性/节点 |
描述 |
---|---|
1 / 姓名 |
标记值(标签)的名称。 |
0..* / 值 |
标记值的价值。 |
0.. 1 / 备忘录 |
如果存在,则表示标注标记值的类型为<memo>。 |
0.. 1 / NOMEMO |
如果存在,则表示标注标记值的类型不是<memo>。 |
0.. 1 / 组 |
如果存在,则表示该值为一个标记值组。 |
描述节点
包含在Nodes中:类DECLARATION、Method DECLARATION、ATTRIBUTE、PARAMETER
多重性/节点 |
描述 |
---|---|
0..* / 值 |
Enterprise Architect应分配给注记的文本。 |