call method

  1. @override
Object? call(
  1. Interpreter interpreter,
  2. List<Object?> arguments,
  3. Map<Symbol, Object?> namedArguments
)
override

Implementation

@override
Object? call(Interpreter interpreter, List<Object?> arguments,
    Map<Symbol, Object?> namedArguments) {
  if (arguments.length < 2) {
    throw "2 arguments required in ListGenerateBuilder";
  }
  var length = arguments[0] as int;
  var generator = arguments[1] as LoxFunction;
  return List.generate(length, (int i) {
    return generator.call(interpreter, [i], {});
  });
}