toNestedStructureMap method

  1. @override
Map<String, Object> toNestedStructureMap()
override

条件分岐で利用するため用意した.

Implementation

@override
Map<String, Object> toNestedStructureMap() {

    final List<MapEntry<String, Object>> list = [];
    int index = 0;

    for (final i in values) {

        final type = i.runtimeType.toString();
        final key = type + '[' + index.toString() + ']';
        late final Object value;

        switch (i) {
        case ToShorthandSignature(): value = (i as ToShorthandSignature).toShorthand();
        case ToNestedStructureMapSignature(): value = i.toNestedStructureMap();
        // case ValuePattern(): value = i.value;
        // case EnumPattern(): value = i.value;
        // case _: value = i.toString();
        }

        final result = MapEntry(key, value);

        list.add(result);

        index = index + 1;

    }

    final result = Map.fromEntries(list);

    return result;

}