parse static method

Call parse(
  1. List message
)

Implementation

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

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

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

  String uri = validateStringOrRaise(message[3], text, "uri");

  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 Call(requestID, uri, args: args, kwargs: kwargs, options: options);
}