AggregationPattern mixin
1.toPrimitive() を override する => hashCode, ==, [], toString(), も自動的に更新される。
- Implemented types
- Mixin applications
Properties
- hashCode → int
-
properties に依存.
no setteroverride
-
properties
→ Map<
String, Object> -
inactivate(), = operator, [] operator, など に依存されている.
no setterinherited - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toInactivatedJson(
) → Map< String, dynamic> -
test 時に 等価比較が行えるように 一部の property 値を無効化する(一定の値に変更する)処理を加えた json を出力する.
例えば process id など, system によって割り振られる値をこちらで指定できないので このような場合に利用する.
override -
toJson(
) → Map< String, dynamic> -
ここでの toJson とは json へ encode 可能な形式へ変換するという意味で使われる.
つまり json string を返すというわけではない.
また serialize としても利用するため deserialize 可能でなければならない.
override -
toNestedStructureMap(
) → Map< String, Object> -
条件分岐で利用するため用意した.
override
-
toString(
) → String -
properties に依存.
override
Operators
-
operator ==(
Object other) → bool -
instance properties の toString() をそれぞれ比較し合う。
properties, [] operator に依存.
override
-
operator [](
String key) → Object - properties から、operator == の内容を自動更新できるようにするために定義している.