createImplMethod function

Method createImplMethod(
  1. ClientMethod method
)

Implementation

Method createImplMethod(ClientMethod method) {
  return createSignature(
    method,
    body: Block.of(switch (method) {
      ClientMethod(isSse: true, returnType: [ClientType(isVoid: false)]) =>
        createStreamCall(method),
      ClientMethod(isWebsocket: true) => createWebsocketCall(method),
      ClientMethod(
        returnType: ClientType(typeForClient: ClientType(isStream: true)),
      ) =>
        createStreamCall(method),
      _ => createFutureCall(method),
    }),
  );
}