ProtectBlockSandwich class final
resolve 実行時に 既存の file を確認しに行き protect contentn を取得しに行く.
citrus template 側に protect がある場合にのみ 既存 file 側に書かれている protect 構文が有効になる.
ex(file 側):
{#protect a}
xyz
{#protect}
ex(template 側):
{#protect a}{#protect} <- この block と block の間にあるものは無視する.
- Inheritance
-
- Object
- CitrusSemantic
- MatureCitrusSemantic
- ProtectBlockSandwich
- Implemented types
Constructors
- ProtectBlockSandwich(String source, Accesser accesser)
-
const
Properties
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
resolve(
CitrusSymbolTable symbolTable, String generateLocation, Iterable< String> fragments) → Success<String, CitrusSemanticException> -
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< ProtectBlockSandwich, CitrusSemanticException>