Define class final

symbol を template 内で定義する.

ex:

{#define_flag a}true{#define_flag}
{#define_flag a}false{#define_flag}
{#define_object a}--x X ---y Y Y Y -z{#define_object}
{#define_object_array a}---array '--x X ---y Y Y Y -z' '--x X ---y Y Y Y -z' '--x X ---y Y Y Y -z'{#define_object}
{#define_text a}xxx{#define_text} 
{#define_text_array a}---array 'X' 'XX' 'XXX'{#define_text_array}

array を指定するときは ---array と指定して値を設定する.
Inheritance
Implemented types

Constructors

Define(String source, DefineKeyword defineKeyword, String symbolName, String symbolValue)
const
Define.from(DefineKeyword defineKeyword, String symbolName, String symbolValue)

Properties

defineKeyword DefineKeyword
final
hashCode int
properties に依存.
no setterinherited
properties Map<String, Object>
inactivate(), = operator, [] operator, など に依存されている.
no setteroverride
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
source String
final
symbolName String
final
symbolValue String
final

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
resolve(CitrusSymbolTable symbolTable) → Danger<CitrusSymbolTable, DefineException>
override
toInactivatedJson() Map<String, dynamic>
test 時に 等価比較が行えるように 一部の property 値を無効化する(一定の値に変更する)処理を加えた json を出力する.
例えば process id など, system によって割り振られる値をこちらで指定できないので このような場合に利用する.
inherited
toJson() Map<String, dynamic>
ここでの toJson とは json へ encode 可能な形式へ変換するという意味で使われる.
つまり json string を返すというわけではない.
また serialize としても利用するため deserialize 可能でなければならない.
inherited
toNestedStructureMap() Map<String, Object>
条件分岐で利用するため用意した.
inherited
toString() String
properties に依存.
inherited

Operators

operator ==(Object other) bool
instance properties の toString() をそれぞれ比較し合う。 properties, [] operator に依存.
inherited
operator [](String key) Object
properties から、operator == の内容を自動更新できるようにするために定義している.
inherited

Static Methods

fromBlockSandwich(BlockSandwich blockSandwich) → Danger<Define, CitrusSemanticException>