他のトップレベルの名前のエイリアスを定義します。
シグネチャ
{define-alias [access] alias = qualified-name [, ...] }
access: public または package。指定がない場合は package が既定です。
alias: エイリアス名。qualified-name と同じ要素を参照します。
qualified-name: 現在のパッケージ内でアクセス可能な名前。パッケージ名を使用できます。
説明
パッケージ内でアクセス可能な他の名前の "alias" を作成します。エイリアスは構文上、オリジナル名とまったく同様に使用できます。Curl の他のトップレベルの定義式と同様に、エイリアス名は
{import * from ...} 式を使用して暗黙的にインポートされた名前をバックグラウンドで隠します。
エイリアスは次のような状況で有効に使用できます。
- 極端に長い名前の略記法として使用します。特に、パッケージの修飾名が必要な場合に利用します。
- {import * from ...} を使用して複数のパッケージから暗黙的にインポートされた同じ名前のインスタンスを明確に区別します。
- 他のパッケージからインポートされた特定の記号を選択して再エクスポートします。
import 式のドキュメントも参照してください。
この式は、Curl ソースのトップレベルでのみ使用できます。
例
{package BOBS-PACKAGE}
{define-class public MyClass ...}
...
{package MARYS-PACKAGE}
{define-class public MyClass ...}
...
{package MY-PACKAGE}
{import * from BOBS-PACKAGE}
{import * from MARYS-PACKAGE}
{define-alias public
BobsClass = BOBS-PACKAGE.MyClass,
MarysClass = MARYS-PACKAGE.MyClass
}
{define-class public MyClass {inherits BobsClass, MarysClass}
...
}