reflect_get_member

現在のスクリプトから指定された識別子に対応する値を取得します。


taiseiue | 2024-10-03

定義

名前空間: Alice.Reflection
アセンブリ: Losetta.dll
ソースコード: Alice.Reflection.cs

reflect_get_member(string)

現在のスクリプトから指定された識別子に対応する値を取得します。

AliceScript
namespace Alice.IO;
public variable reflect_get_member(string identifier);
引数
identifier 取得する値に対応する識別子
戻り値
variable 識別子に対応する値。詳しくは、「説明」をご覧ください。
例外
COULDNT_FIND_VARIABLE 識別子identifierは定義されていません

対応
AliceScript 4
AliceSister 4
Losetta 0.11

説明

この関数は、現在のスクリプトから指定された識別子に対応する値を取得します。 この関数は、識別子に対応する変数の値を返します。識別子に対応するメンバーが関数の場合は、その関数を表すデリゲートを返します。

identifierには、現在のスコープでアクセスできる識別子を指定してください。現在のスコープにidentifierという名前のメンバーが存在しないか、アクセスできないか、デリゲートに変換できない関数の場合、「COULDNT_FIND_VARIABLE」例外が発生します。

次の例では、変数xを定義してから文字列でその値を取得します。

using Alice.Reflection;

var x = 1234;

print(reflect_get_member("x"));
//出力: 1234

次の例では、関数funcを定義してから文字列でそのデリゲートを取得し、呼び出します。

using Alice.Reflection;

void func()
{
    print("Hello,World!");
}

reflect_get_member("func").Invoke();
//出力: Hello,World!