Map 函数

当动态类型的关联模式类型已知时,您可以设计动态类型。 根据特定规则,模式成员名称可转换为动态类字段名称。

map 函数用于在其相关模式类型已知时设计动态类型。

  • 如果 T复杂 类型,那么 map (T) 表示与 T相关的动态类。

  • 如果 T原子 简单类型,那么 map (T) 通过遵循以下规则来表示其映射的动态类型:

    1. 如果 T 是内置类型,那么动态类型由 XXX 提供。

    2. map (T) = map (base (T)) ,其中 base (T)T的直接基本简单类型。

映射函数的示例

使用简单类型 MyT 定义为:

<simpleType name="MyT">
  <restriction base="string">
</simpleType>

您有, map(MyT) = java.lang.String

以下表达式:

class C 
{ 
 [map(MyT)] myField;
}

代表:

class C
{
  java.lang.String myField;
}

将模式成员名称转换为动态类字段名称

根据一系列规则,模式成员名称可转换为动态类字段名称。

根据以下规则,模式成员名称将转换为动态类字段名称:

  • 第一个字母会被转换为小写。

  • Java™标识符中包含的所有字符均原封不动地进行了翻译。

  • 其他字符将被丢弃,下一个字母将被转换为大写。

  • 如果生成的成员名称已被用作成员标识符,则会在该名称后添加一个数字后缀。 例如, field 变为 field_0

根据这些规则, my-address 变成了 myAddress