call method

  1. @override
Object? call(
  1. InterpreterVisitor visitor,
  2. List<Object?> positionalArgs, [
  3. Map<String, Object?>? namedArgs,
  4. List<RuntimeType>? typeArguments,
])
override

Call creates an instance wrapping the representation value

Implementation

@override
Object? call(
  InterpreterVisitor visitor,
  List<Object?> positionalArgs, [
  Map<String, Object?>? namedArgs,
  List<RuntimeType>? typeArguments,
]) {
  if (positionalArgs.isEmpty) {
    throw RuntimeD4rtException(
      "Extension type '$name' requires exactly one positional argument",
    );
  }
  final representationValue = positionalArgs[0];
  return InterpretedExtensionTypeInstance(this, representationValue);
}