execute method

  1. @override
List execute(
  1. List results,
  2. Map<String, dynamic> passed
)
override

The iterable, nested function that evaluates the entire FHIRPath expression one object at a time

Implementation

@override
List execute(List results, Map<String, dynamic> passed) => results.isEmpty
    ? []
    : results.length > 1
    ? throw _conversionException('.toBoolean()', results)
    : _isNotAcceptedType(results)
    ? []
    : results.first == true ||
          results.first == 1 ||
          ['true', 't', 'yes', 'y', '1', '1.0'].indexWhere(
                (element) =>
                    element == results.first.toString().toLowerCase(),
              ) !=
              -1
    ? [true]
    : results.first == false ||
          results.first == 0 ||
          ['false', 'f', 'no', 'n', '0', '0.0'].indexWhere(
                (element) =>
                    element == results.first.toString().toLowerCase(),
              ) !=
              -1
    ? [false]
    : [];