[前へ] [目次へ] [次へ]

FGESMethod (ネイティブクラス)


このクラスはメソッドを扱うクラスです。

このクラスのインスタンスはFGESコンパイラだけが作成しても良いことになっています。
これはFGES VM自体がこのクラスのインスタンスを処理するため、
不完全な状態のインスタンスを放置するとFGES VMがクラッシュする可能性があるためです。

このクラスは実体化不可です。FGES上でインスタンスを作成することはできません。

●継承

   このクラスは継承をしていません。

●インターフェイスとインターフェイスメソッド

   implements INativeMethod
          Call
          Reserve
          CallV
          ReserveV
          ValidateCall
          ValidateCallV
          (C++レベルキャスト)FGESMethod


   implements INativeClosure
          Call
          CallV
          ValidateCall
          ValidateCallV
          (C++レベルキャスト)FGESMethod


●クラスメソッド

   このクラスはクラスメソッドを持っていません。

●クラスメンバメソッド

名前概要
public操作メソッドconst Callメソッドとして呼び出します
public操作メソッドconst Reserveこのメソッドを予約します
public操作メソッドconst CallVメソッドとして呼び出します
public操作メソッドconst ReserveVこのメソッドを予約します
public操作メソッドconst ConstCallメソッドとして呼び出します
public操作メソッドconst ConstReserveこのメソッドを予約します
public操作メソッドconst ConstCallVメソッドとして呼び出します
public操作メソッドconst ConstReserveVこのメソッドを予約します
public設定メソッド Observeこのメソッドの呼び出しに連動する呼び出しを設定します
public設定メソッド ObserveCこのメソッドの呼び出しに連動する呼び出しを設定します
public設定メソッド UnObserveこのメソッドの呼び出しに連動する呼び出しを解除します
public操作メソッド ResetObserveこのメソッドの呼び出しに連動する呼び出しを全て解除します
public取得メソッドconst GetMethodDeclarationこのメソッドのメソッド宣言を取得します
public比較・判定メソッドconst ValidateCallメソッドとして呼び出せるか検証します
public比較・判定メソッドconst ValidateCallVメソッドとして呼び出せるか検証します
public比較・判定メソッドconst ValidateConstCallメソッドとして呼び出せるか検証します
public比較・判定メソッドconst ValidateConstCallVメソッドとして呼び出せるか検証します

●クラス共有変数

名前概要
readable BEFORE_NOTIFY実行前、通知形式の連動呼び出し
readable BEFORE_EXCALL実行前、連動形式の連動呼び出し
readable BEFORE_NOTIFY実行後、通知形式の連動呼び出し
readable BEFORE_EXCALL実行後、連動形式の連動呼び出し

●インスタンス変数

   このクラスはインスタンス変数を持っていません。


●C++レベル追加情報

クラスID: FGES_CLASSID_METHOD
クラス名: FGESMethod



FGESMethod::INativeMethod@@Call

Any?@ INativeMethod@@Call(...)const

   このオブジェクトが示すメソッドを呼び出します。
   この方法では呼び出しのホストオブジェクトを指定できないため、
   呼び出せるのは static メソッドに限定されます。

戻り値:呼び出したメソッドの戻り値を返します

可変長引数:呼び出すメソッドの引数としてそのまま使われます

先頭へ


FGESMethod::INativeMethod@@Reserve

Bool INativeMethod@@Reserve(...)const

   このオブジェクトが示すメソッドを予約します。
   予約したメソッドはこのスレッドの呼び出しスタックの最下層に挿入され、
   現在このスレッドが実行しているメソッドが全て終了した後、   実行が開始されます。

   引数のオブジェクトは実行が開始されるまで存在していなければいけません。
   ローカル変数や一時オブジェクトを引数に使うと例外の原因になります。

   この方法では呼び出しのホストオブジェクトを指定できないため、
   呼び出せるのは static メソッドに限定されます。
   また、予約したメソッドの戻り値は取得できません。

戻り値:予約に成功すると真を返します

可変長引数:呼び出すメソッドの引数としてそのまま使われます

先頭へ


FGESMethod::INativeMethod@@CallV

Any?@ INativeMethod@@CallV( Arguments arg_list)const

   このオブジェクトが示すメソッドを呼び出します。
   この方法では呼び出しのホストオブジェクトを指定できないため、
   呼び出せるのは static メソッドに限定されます。

戻り値:呼び出したメソッドの戻り値を返します

Arguments arg_list :呼び出すメソッドの引数として展開されます

先頭へ


FGESMethod::INativeMethod@@ReserveV

Bool INativeMethod@@ReserveV( Arguments arg_list)const

   このオブジェクトが示すメソッドを予約します。
   予約したメソッドはこのスレッドの呼び出しスタックの最下層に挿入され、
   現在このスレッドが実行しているメソッドが全て終了した後、   実行が開始されます。

   引数のオブジェクトは実行が開始されるまで存在していなければいけません。
   ローカル変数や一時オブジェクトを引数に使うと例外の原因になります。

   この方法では呼び出しのホストオブジェクトを指定できないため、
   呼び出せるのは static メソッドに限定されます。
   また、予約したメソッドの戻り値は取得できません。

戻り値:予約に成功すると真を返します

Arguments arg_list :呼び出すメソッドの引数として展開されます

先頭へ


FGESMethod::INativeMethod@@ValidateCall

Bool INativeMethod@@ValidateCall(...)const

   このオブジェクトが示すメソッドを指定した引数で呼び出せるか検証します。

戻り値:指定した引数で呼び出せる場合は真を返します。

可変長引数:検証する引数列

先頭へ


FGESMethod::INativeMethod@@ValidateCallV

Bool INativeMethod@@ValidateCallV( Arguments arg_list)const

   このオブジェクトが示すメソッドを指定した引数で呼び出せるか検証します。

戻り値:指定した引数で呼び出せる場合は真を返します。

Arguments arg_list :検証する引数

先頭へ


FGESMethod::INativeClosure@@Call

Any?@ INativeClosure@@Call(...)const

   このオブジェクトが示すメソッドを呼び出します。
   この方法では呼び出しのホストオブジェクトを指定できないため、
   呼び出せるのは static メソッドに限定されます。

戻り値:呼び出したメソッドの戻り値を返します

可変長引数:呼び出すメソッドの引数としてそのまま使われます

先頭へ


FGESMethod::INativeClosure@@CallV

Any?@ INativeClosure@@CallV( Arguments arg_list)const

   このオブジェクトが示すメソッドを呼び出します。
   この方法では呼び出しのホストオブジェクトを指定できないため、
   呼び出せるのは static メソッドに限定されます。

戻り値:呼び出したメソッドの戻り値を返します

Arguments arg_list :呼び出すメソッドの引数として展開されます

先頭へ


FGESMethod::INativeClosure@@ValidateCall

Bool INativeClosure@@ValidateCall(...)const

   このオブジェクトが示すメソッドを指定した引数で呼び出せるか検証します。

戻り値:指定した引数で呼び出せる場合は真を返します。

可変長引数:検証する引数列

先頭へ


FGESMethod::INativeClosure@@ValidateCallV

Bool INativeClosure@@ValidateCallV( Arguments arg_list)const

   このオブジェクトが示すメソッドを指定した引数で呼び出せるか検証します。

戻り値:指定した引数で呼び出せる場合は真を返します。

Arguments arg_list :検証する引数

先頭へ


FGESMethod::Call

public Any?@ Call(editable Any? hostobj,...)const

   このオブジェクトが示すメソッドを呼び出します。
   hostobj に指定するオブジェクトは呼び出すメソッドの対象クラスまたは、
   その派生クラスでなければいけません。

戻り値:呼び出したメソッドの戻り値を返します

editable Any? hostobj :呼び出しのホストオブジェクト
可変長引数:呼び出すメソッドの引数としてそのまま使われます

先頭へ


FGESMethod::Reserve

public Bool Reserve(editable Any? hostobj,...)const

   このオブジェクトが示すメソッドを予約します。
   予約したメソッドはこのスレッドの呼び出しスタックの最下層に挿入され、
   現在このスレッドが実行しているメソッドが全て終了した後、   実行が開始されます。

   引数のオブジェクトは実行が開始されるまで存在していなければいけません。
   ローカル変数や一時オブジェクトを引数に使うと例外の原因になります。

   hostobj に指定するオブジェクトは呼び出すメソッドの対象クラスまたは、
   その派生クラスでなければいけません。
   また、予約したメソッドの戻り値は取得できません。

戻り値:予約に成功すると真を返します

editable Any? hostobj :呼び出しのホストオブジェクト
可変長引数:呼び出すメソッドの引数としてそのまま使われます

先頭へ


FGESMethod::CallV

public Any?@ CallV(editable Any? hostobj, Arguments arg_list)const

   このオブジェクトが示すメソッドを呼び出します。
   hostobj に指定するオブジェクトは呼び出すメソッドの対象クラスまたは、
   その派生クラスでなければいけません。

戻り値:呼び出したメソッドの戻り値を返します

editable Any? hostobj :呼び出しのホストオブジェクト
Arguments arg_list :呼び出すメソッドの引数として展開されます

先頭へ


FGESMethod::ReserveV

public Bool ReserveV(editable Any? hostobj, Arguments arg_list)const

   このオブジェクトが示すメソッドを予約します。
   予約したメソッドはこのスレッドの呼び出しスタックの最下層に挿入され、
   現在このスレッドが実行しているメソッドが全て終了した後、   実行が開始されます。

   引数のオブジェクトは実行が開始されるまで存在していなければいけません。
   ローカル変数や一時オブジェクトを引数に使うと例外の原因になります。

   hostobj に指定するオブジェクトは呼び出すメソッドの対象クラスまたは、
   その派生クラスでなければいけません。
   また、予約したメソッドの戻り値は取得できません。

戻り値:予約に成功すると真を返します

editable Any? hostobj :呼び出しのホストオブジェクト
Arguments arg_list :呼び出すメソッドの引数として展開されます

先頭へ


FGESMethod::ConstCall

public Any?@ ConstCall( Any? hostobj,...)const

   このオブジェクトが示すメソッドを呼び出します。
   hostobj に指定するオブジェクトは呼び出すメソッドの対象クラスまたは、
   その派生クラスでなければいけません。
   さらに、呼び出しのホストオブジェクトが readonly なので、
   呼び出すメソッドは const メソッドでなければいけません。

戻り値:呼び出したメソッドの戻り値を返します

Any? hostobj :呼び出しのホストオブジェクト
可変長引数:呼び出すメソッドの引数としてそのまま使われます

先頭へ


FGESMethod::ConstReserve

public Bool ConstReserve( Any? hostobj,...)const

   このオブジェクトが示すメソッドを予約します。
   予約したメソッドはこのスレッドの呼び出しスタックの最下層に挿入され、
   現在このスレッドが実行しているメソッドが全て終了した後、   実行が開始されます。

   引数のオブジェクトは実行が開始されるまで存在していなければいけません。
   ローカル変数や一時オブジェクトを引数に使うと例外の原因になります。

   hostobj に指定するオブジェクトは呼び出すメソッドの対象クラスまたは、
   その派生クラスでなければいけません。
   さらに、呼び出しのホストオブジェクトが readonly なので、
   呼び出すメソッドは const メソッドでなければいけません。
   また、予約したメソッドの戻り値は取得できません。

戻り値:予約に成功すると真を返します

Any? hostobj :呼び出しのホストオブジェクト
可変長引数:呼び出すメソッドの引数としてそのまま使われます

先頭へ


FGESMethod::ConstCallV

public Any?@ ConstCallV( Any? hostobj, Arguments arg_list)const

   このオブジェクトが示すメソッドを呼び出します。
   hostobj に指定するオブジェクトは呼び出すメソッドの対象クラスまたは、
   その派生クラスでなければいけません。
   さらに、呼び出しのホストオブジェクトが readonly なので、
   呼び出すメソッドは const メソッドでなければいけません。

戻り値:呼び出したメソッドの戻り値を返します

Any? hostobj :呼び出しのホストオブジェクト
Arguments arg_list :呼び出すメソッドの引数として展開されます

先頭へ


FGESMethod::ConstReserveV

public Bool ConstReserveV( Any? hostobj, Arguments arg_list)const

   このオブジェクトが示すメソッドを予約します。
   予約したメソッドはこのスレッドの呼び出しスタックの最下層に挿入され、
   現在このスレッドが実行しているメソッドが全て終了した後、   実行が開始されます。

   引数のオブジェクトは実行が開始されるまで存在していなければいけません。
   ローカル変数や一時オブジェクトを引数に使うと例外の原因になります。

   hostobj に指定するオブジェクトは呼び出すメソッドの対象クラスまたは、
   その派生クラスでなければいけません。
   さらに、呼び出しのホストオブジェクトが readonly なので、
   呼び出すメソッドは const メソッドでなければいけません。
   また、予約したメソッドの戻り値は取得できません。

戻り値:予約に成功すると真を返します

Any? hostobj :呼び出しのホストオブジェクト
Arguments arg_list :呼び出すメソッドの引数として展開されます

先頭へ


FGESMethod::Observe

public Bool Observe(editable Any? hostobj, FGESMethod handler,
             INativeInteger type, Any? cond_thisobj=NULL)


   このオブジェクトが示すメソッドを実行する時、連動する呼び出しを設定します。
   cond_thisobj が空参照ではない場合、 cond_thisobj が呼び出しのホストになった場合のみ連動呼び出しを行います。
   このメソッドは既に同じ hostobj と handler と cond_thisobj の組み合わせが設定されている場合、
   該当する組み合わせの設定を上書きします。
   
   hostobj に指定するオブジェクトは handler の対象クラスまたは、
   その派生クラスでなければいけません。
   
   連動呼び出しするメソッドの形式は以下の二種類です。
   通知形式([注]の部分はこのメソッドの this と同じ型になります):
      void ([注] hostobj, Arguments argobj)
            hostobj はこのメソッド自体の呼び出しの this が渡されます。
            argobj はこのメソッド自体の呼び出しの arglist が渡されます。

   連動形式:
      void ([注])
            引数列および引数はこのメソッド自体の呼び出しと同じものが使用されます。

戻り値:設定に成功すると真を返します。

editable Any? hostobj :連動呼び出しのホストオブジェクト
FGESMethod handler :連動呼び出しするメソッド
INativeInteger type :連動呼び出しのタイミングと形式。以下のいずれか。
識別名実行タイミング呼び出すメソッドの形式
FGESMethod::BEFORE_NOTIFYこのメソッドの実行前通知
FGESMethod::BEFORE_EXCALLこのメソッドの実行前連動
FGESMethod::AFTER_NOTIFYこのメソッドの実行後通知
FGESMethod::AFTER_EXCALLこのメソッドの実行後連動
Any? cond_thisobj=NULL :呼び出し条件となるホストオブジェクト。
         空参照を指定した場合は呼び出しのホストオブジェクトに関わらず連動呼び出しします。

先頭へ


FGESMethod::ObserveC

public Bool ObserveC( Any? hostobj, FGESMethod handler,
             INativeInteger type, Any? cond_thisobj=NULL)


   このオブジェクトが示すメソッドを実行する時、連動する呼び出しを設定します。
   cond_thisobj が空参照ではない場合、 cond_thisobj が呼び出しのホストになった場合のみ連動呼び出しを行います。
   このメソッドは既に同じ hostobj と handler と cond_thisobj の組み合わせが設定されている場合、
   該当する組み合わせの設定を上書きします。
   
   hostobj に指定するオブジェクトは handler の対象クラスまたは、
   その派生クラスでなければいけません。
   
   連動呼び出しするメソッドの形式は以下の二種類です。
   通知形式([注]の部分はこのメソッドの this と同じ型になります):
      void ([注] hostobj, Arguments argobj)
            hostobj はこのメソッド自体の呼び出しの this が渡されます。
            argobj はこのメソッド自体の呼び出しの arglist が渡されます。

   連動形式:
      void ([注])
            引数列および引数はこのメソッド自体の呼び出しと同じものが使用されます。

   さらに、連動呼び出しのホストオブジェクトが readonly なので、
   連動呼び出しするメソッドは const メソッドでなければいけません。

戻り値:設定に成功すると真を返します。

Any? hostobj :連動呼び出しのホストオブジェクト
FGESMethod handler :連動呼び出しするメソッド
INativeInteger type :連動呼び出しのタイミングと形式。以下のいずれか。
識別名実行タイミング呼び出すメソッドの形式
FGESMethod::BEFORE_NOTIFYこのメソッドの実行前通知
FGESMethod::BEFORE_EXCALLこのメソッドの実行前連動
FGESMethod::AFTER_NOTIFYこのメソッドの実行後通知
FGESMethod::AFTER_EXCALLこのメソッドの実行後連動
Any? cond_thisobj=NULL :呼び出し条件となるホストオブジェクト。
         空参照を指定した場合は呼び出しのホストオブジェクトに関わらず連動呼び出しします。

先頭へ


FGESMethod::UnObserve

public Bool UnObserve( Any? hostobj, FGESMethod handler, Any? cond_thisobj=NULL)

   このオブジェクトに設定済みの連動呼び出し設定を解除します。
   このメソッドは hostobj と handler と cond_thisobj の組み合わせで設定を識別します。
   指定した hostobj と handler と cond_thisobj の組み合わせが設定されていない場合は失敗します。
   
戻り値:解除に成功すると真を返します。

Any? hostobj :連動呼び出しを解除するホストオブジェクト
FGESMethod handler :連動呼び出しを解除するメソッド
Any? cond_thisobj=NULL :呼び出し条件となるホストオブジェクト

先頭へ


FGESMethod::ResetObserve

public void ResetObserve()

   このオブジェクトに設定済みの連動呼び出し設定を全て解除します。

先頭へ


FGESMethod::GetMethodDeclaration

public String GetMethodDeclaration()const

   このオブジェクトが示すメソッドの作成時に使用したメソッド宣言を返します。
   返されるメソッド宣言はソースコード上に記述された宣言自体のコピーです。

戻り値:作成時に使用したメソッド宣言

先頭へ


FGESMethod::ValidateCall

public Bool ValidateCall(editable Any? hostobj,...)const

   このオブジェクトが示すメソッドを指定したホストオブジェクトと引数で呼び出せるか検証します。

戻り値:指定したホストオブジェクトと引数で呼び出せる場合は真を返します。

editable Any? hostobj :検証するホストオブジェクト
可変長引数:検証する引数列

先頭へ


FGESMethod::ValidateCallV

public Bool ValidateCallV(editable Any? hostobj, Arguments arg_list)const

   このオブジェクトが示すメソッドを指定したホストオブジェクトと引数で呼び出せるか検証します。

戻り値:指定したホストオブジェクトと引数で呼び出せる場合は真を返します。

editable Any? hostobj :検証するホストオブジェクト
Arguments arg_list :検証する引数

先頭へ


FGESMethod::ValidateConstCall

public Bool ValidateConstCall( Any? hostobj,...)const

   このオブジェクトが示すメソッドを指定したホストオブジェクトと引数で呼び出せるか検証します。

戻り値:指定したホストオブジェクトと引数で呼び出せる場合は真を返します。

Any? hostobj :検証するホストオブジェクト
可変長引数:検証する引数列

先頭へ


FGESMethod::ValidateConstCallV

public Bool ValidateConstCallV( Any? hostobj, Arguments arg_list)const

   このオブジェクトが示すメソッドを指定したホストオブジェクトと引数で呼び出せるか検証します。

戻り値:指定したホストオブジェクトと引数で呼び出せる場合は真を返します。

Any? hostobj :検証するホストオブジェクト
Arguments arg_list :検証する引数

先頭へ


FGESMethod::BEFORE_NOTIFY

readable readonly Integer BEFORE_NOTIFY

   連動呼び出しを「実行前」「通知形式」で行うことを示す定数。

先頭へ


FGESMethod::BEFORE_EXCALL

readable readonly Integer BEFORE_EXCALL

   連動呼び出しを「実行前」「連動形式」で行うことを示す定数。

先頭へ


FGESMethod::AFTER_NOTIFY

readable readonly Integer AFTER_NOTIFY

   連動呼び出しを「実行後」「通知形式」で行うことを示す定数。

先頭へ


FGESMethod::AFTER_EXCALL

readable readonly Integer AFTER_EXCALL

   連動呼び出しを「実行後」「連動形式」で行うことを示す定数。

先頭へ


[前へ] [目次へ] [次へ]

最終更新 2019/09/04