on method

Listener on(
  1. String event,
  2. Function f
)

Implementation

Listener on(String event, Function f) {
  return emitter.on(event, this, (ev, context) {
    List params = ev.eventData as List;
    switch (params.length) {
      case 0:
        f();
        break;
      case 1:
        f(params[0]);
        break;
      case 2:
        f(params[0], params[1]);
        break;
      case 3:
        f(params[0], params[1], params[2]);
        break;
      case 4:
        f(params[0], params[1], params[2], params[3]);
        break;
      case 5:
        f(params[0], params[1], params[2], params[3], params[4]);
        break;
      case 6:
        f(params[0], params[1], params[2], params[3], params[4], params[5]);
        break;
      default:
        throw Exception("Got more params that I can handle");
    }
  });
}