addCodeToExpansion method

Map<String, dynamic> addCodeToExpansion(
  1. String system,
  2. String code,
  3. String? display,
  4. Map<String, dynamic> expansion,
  5. bool includeDefinition, {
  6. List<FhirNode> designation = const [],
})

Adds system#code to the expansion, once.

Implementation

Map<String, dynamic> addCodeToExpansion(
  String system,
  String code,
  String? display,
  Map<String, dynamic> expansion,
  bool includeDefinition, {
  List<FhirNode> designation = const [],
}) {
  if (isCodeInExpansion(system, code, expansion)) return expansion;
  final item = <String, dynamic>{
    'system': system,
    'code': code,
    if (display != null) 'display': display,
    if (includeDefinition && designation.isNotEmpty)
      'designation': [for (final d in designation) context.binding.toJson(d)],
  };
  return _withContains(expansion, [..._containsOf(expansion), item]);
}