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 StreamPeriodicBuilder";
  }
  var period = arguments[0] as Duration;
  return Stream.periodic(period, (i) {
    return (arguments[1] as LoxFunction).call(interpreter, [i], {});
  });
}