Raxol.AgentClientProtocol.Rpc.Request (Raxol Agent Client Protocol v0.1.0)

Copy Markdown View Source

JSON-RPC 2.0 Request object (id + method + optional params).

Ported from the MIT f1729/agent_client_protocol (c) 2025 f1729; see NOTICE.md.

Summary

Functions

Decode a Request object. Total: a missing/wrong-typed id or method returns {:error, :invalid_request} rather than raising.

Types

t()

@type t() :: %Raxol.AgentClientProtocol.Rpc.Request{
  _meta: map(),
  id: Raxol.AgentClientProtocol.Rpc.RequestId.t(),
  method: String.t(),
  params: any() | nil
}

Functions

from_json(map)

@spec from_json(term()) :: {:ok, t()} | {:error, :invalid_request}

Decode a Request object. Total: a missing/wrong-typed id or method returns {:error, :invalid_request} rather than raising.

new(id, method, params \\ nil)

to_json(req)

@spec to_json(t()) :: map()