parse static method

Invocation parse(
  1. List message
)

Implementation

static Invocation parse(final List<dynamic> message) {
  sanityCheck(message, minLength, maxLength, id, text);

  int requestID = validateIntOrRaise(message[1], text, "request ID");

  int registrationID = validateIntOrRaise(message[2], text, "registration ID");

  Map<String, dynamic> details = validateMapOrRaise(message[3], text, "details");

  List<dynamic>? args;
  if (message.length > minLength) {
    args = validateListOrRaise(message[4], text, "args");
  }

  Map<String, dynamic>? kwargs;
  if (message.length == maxLength) {
    kwargs = validateMapOrRaise(message[5], text, "kwargs");
  }

  return Invocation(requestID, registrationID, args: args, kwargs: kwargs, details: details);
}