Aliases (プロパティ・キーワード)
オブジェクト・アクセスにより使用するための、このプロパティの追加名を指定します。
使用法
プロパティの追加名を指定するには、以下の構文を使用します。
Property name As classname [ Aliases=othernames ];
othernames は、中括弧で囲まれた、有効なプロパティ名のコンマ区切りリストです。
詳細
Aliases キーワードを指定する場合、コンパイラは元のプロパティが指しているのと同じ基本データを指す、特定のエイリアスを作成します。例えば、以下のように Sample.Person の Name プロパティを再定義するとします。
Property Name As %String(POPSPEC = "Name()") [ Aliases = {Alternate}, Required ];
その場合、以下のターミナル・セッションで示すとおり、コードは Name プロパティまたは同等の Alternate プロパティのいずれかで機能します。
SAMPLES>set p=##class(Sample.Person).%OpenId(1)
SAMPLES>w p.Name
Fripp,Charles Z.
SAMPLES>w p.Alternate
Fripp,Charles Z.
SAMPLES>set p.Alternate="Anderson,Neville J."
SAMPLES>w p.Name
Anderson,Neville J.
元のプロパティと関連付けられているすべてのプロパティも、各エイリアス・プロパティに対して定義されます。そのためこの例では、AlternateIsValid() は呼び出し可能であり、NameIsValid() メソッドの場合と同じ結果を返します。さらに、プロパティ・メソッドを (例えば、カスタム NameGet() メソッドを記述するなどして) オーバーライドする場合、そのオーバーライドはエイリアスのプロパティに自動的に適用されます。
Note:
このキーワードは、プロパティの SQL プロジェクションには影響を与えません。
既定値
既定では、このキーワードは NULL であり、プロパティにエイリアスはありません。
例
Property PropA As %String [ Aliases={OtherName,OtherName2} ];