evaluateJsonBatch method

List evaluateJsonBatch(
  1. Iterable<String> expressions, {
  2. String? sourceUrl,
})

Evaluate multiple JavaScript expressions and decode the results through one JSON round-trip. Expressions must be JSON-serializable and are evaluated in order in the same runtime.

Implementation

List<dynamic> evaluateJsonBatch(
  Iterable<String> expressions, {
  String? sourceUrl,
}) {
  final items = expressions.toList(growable: false);
  if (items.isEmpty) return const [];
  final code = '[${items.map((expression) => '($expression)').join(',')}]';
  final result = evaluateJson(code, sourceUrl: sourceUrl);
  return (result as List<dynamic>?) ?? const [];
}