Pristine.Client (Pristine v0.3.0)

Copy Markdown View Source

Provider-agnostic runtime client used by generated providers and thin facades.

Summary

Types

runtime_defaults_t()

@type runtime_defaults_t() :: %{
  retry: module() | nil,
  timeout_ms: non_neg_integer() | nil,
  telemetry: module() | nil,
  serializer: module() | nil,
  stream_transport: module() | nil,
  rate_limiter: module() | nil,
  circuit_breaker: module() | nil
}

t()

@type t() :: %Pristine.Client{
  base_url: String.t() | nil,
  context: Pristine.Core.Context.t(),
  default_auth: term(),
  default_headers: map(),
  runtime_defaults: runtime_defaults_t(),
  transport: module() | nil
}

Functions

foundation(opts \\ [])

@spec foundation(keyword()) :: t()

from_context(context)

@spec from_context(Pristine.Core.Context.t()) :: t()

new(opts \\ [])

@spec new(keyword()) :: t()