Backplane. AiProtocol. Validation
(backplane_ai_protocol v0.7.0)
Copy Markdown
Structural limits for portable protocol values.
These limits apply after decoding. Encoded JSON is bounded separately by
Backplane.AiProtocol.Serialization.from_json/2.
Summary
Types
@type limits() :: %{optional(atom()) => pos_integer()}
Functions
@spec bounded_extension(String.t(), term(), limits()) :: :ok | {:error, Backplane.AiProtocol.Error.t()}
@spec bounded_map(term(), limits()) :: :ok | {:error, Backplane.AiProtocol.Error.t()}
@spec default_limits() :: limits()
@spec reject_unknown(map(), [atom()]) :: :ok | {:error, Backplane.AiProtocol.Error.t()}
@spec term(term(), limits()) :: :ok | {:error, Backplane.AiProtocol.Error.t()}