toJson method

  1. @override
Map<String, Object?> toJson(
  1. Map<Constant, int> constants,
  2. Map<Location, int> locations
)

Implementation

@override
Map<String, Object?> toJson(
  Map<Constant, int> constants,
  Map<Location, int> locations,
) {
  final positionalJson =
      positionalArguments.map((constant) => constants[constant]).toList();
  final namedJson = namedArguments.map(
    (name, constant) => MapEntry(name, constants[constant]),
  );
  return {
    _typeKey: 'with_arguments',
    if (positionalJson.isNotEmpty) _positionalKey: positionalJson,
    if (namedJson.isNotEmpty) _namedKey: namedJson,
    ...super.toJson(constants, locations),
  };
}