@Eval (式言語)

実行時に、文字列式の各要素を式としてコンパイルし、実行します。リスト内の最後の式の結果を返します。リストのいずれかの式でエラーが生じたときは、エラーを返します。

注: この @ 関数は、Release 6 で新しく追加されました。

構文

@Eval( textExpressions )

パラメータ

textExpressions

@Eval を使用して評価する任意の文字列式です。評価する文字列式を中括弧 ({ }) または引用符 (" ") で囲みます。引用符を使用する場合は、式内の各文字列式を囲む引用符を円記号 (¥) でエスケープします。中括弧を使用する場合は、右中括弧をエスケープします。文字列式を連結するにはプラス記号 (+) を使用します。

戻り値

lastExpression

最後の表現式の値が返されます。

使用法

この関数は、エージェント、ホットスポットボタン、ツールバーボタンで使用すると便利です。また、実行時に 1 つの @関数内から複数の文字列式を評価するときにも便利です。

@Eval をビュー列や選択式で使用すると、予期しない結果が生じることがあります。この関数は実行時に評価されるため、ビューエンジンは分析という標準的な手順を実行できません。この分析とは、出現する @関数の種類を前もって検出し、その準備を行うことです。

  1. この式は、一時変数 x の値と文字列式「bar」の値を連結します。「rebar」が返されます。
    x := "re";
    @Eval({x + "bar"});

  2. 次のコードをアクションボタンに追加すると、[comment] フィールドが作成され、ユーザーの入力がリアルタイムでこのフィールドに追加されます。
    input := {FIELD comment := @Prompt([OKCANCELEDIT];"Input";"Input a value"; "Default");};
    @Eval(input);

    [comment] フィールドの内容を表示するには、ホットスポットまたはアクションボタンで次のコードを使用します。

    @Prompt([OK];"Value of comment field";@GetField("comment"))