getChildrenByName method

  1. @override
List<FhirBase> getChildrenByName(
  1. String fieldName, [
  2. bool checkValid = false
])
override

Retrieves all matching child fields by name. Optionally validates the name.

Implementation

@override
List<FhirBase> getChildrenByName(
  String fieldName, [
  bool checkValid = false,
]) {
  final fields = <FhirBase>[];
  switch (fieldName) {
    case 'id':
      if (id != null) {
        fields.add(id!);
      }
    case 'extension':
      if (extension_ != null) {
        fields.addAll(extension_!);
      }
    case 'modifierExtension':
      if (modifierExtension != null) {
        fields.addAll(modifierExtension!);
      }
    case 'location':
      fields.add(location);
    case 'status':
      if (status != null) {
        fields.add(status!);
      }
    case 'form':
      if (form != null) {
        fields.add(form!);
      }
    case 'period':
      if (period != null) {
        fields.add(period!);
      }
    default:
      if (checkValid) {
        throw ArgumentError('Invalid name: $fieldName');
      }
  }
  return fields;
}