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


FGESの式はメソッド定義空間および初期化式、デフォルト引数式にのみ記述でき、
メソッド定義空間では制御文以外の全ての部分は式で構成されます。
C/C++の構文がベースとなっており、多くの部分で似たような記述が可能です。

FGESでは名前解決やメソッド呼び出しも演算子として扱います。
また、単体の式は文としても扱うことができます。


FGESの式は識別子、定数、演算子によって構成され、演算子の優先順位および結合規則に基づいて評価します。
全ての演算子の評価が終わった時点で識別子の残数が0または1である必要があります。

定数は同値を示す識別子に変換されます。
各演算子は左辺または右辺、または両方に識別子を取り、識別子を0または1残します。
識別子を残さない演算子は式の最後に評価されなければなりません。

式の中に単体の () が存在する場合、ネストした式としてその部分が先に評価されます。
ネストした式は評価後に識別子が一つだけ残らなければいけません。
メソッド呼び出し演算子、およびそれに変換される演算子の引数部分もネストした式として先に評価されます。

式の先頭が ? で始まる場合、 ? は空参照として解釈されます。
式の先頭以外で ? が使われた場合、条件演算子として解釈されます。

組み込み演算子の中には専用の構文解析を行いその結果を識別子として残す演算子があります。
このような演算子の動作については 演算子 の項を参照してください。

以下に示す識別子は組み込み識別子として定義されており、
対応するオブジェクトへの参照に変換されます。
識別子内容
this定義中のメソッドの対象クラス呼び出しのホストオブジェクト
superFGESMethod定義中のメソッドがオーバーライドしているメソッドオブジェクト
SelfTypeFGESClass定義中のメソッドを定義しているクラスのクラスオブジェクト
(他のクラスを対象としてコンパイルしていても、「メソッドが所属するクラス」を指します)
truereadonly Bool
falsereadonly Bool
NULLAnyClass空参照
nullAnyClass空参照


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

最終更新 2018/01/30