ASM.Options (ASM v0.9.2)

Copy Markdown View Source

Shared runtime options validation and normalization.

Summary

Types

t()

@type t() :: keyword()

Functions

attach_model_payload(provider_opts, model_payload)

@spec attach_model_payload(
  keyword(),
  map()
) :: keyword()

finalize_provider_opts(provider, provider_opts, opts \\ [])

@spec finalize_provider_opts(atom(), keyword(), keyword()) ::
  {:ok, keyword()} | {:error, ASM.Error.t()}

merge_provider_schema(provider_schema)

@spec merge_provider_schema(keyword()) :: {:ok, keyword()} | {:error, ASM.Error.t()}

resolve_model_payload(provider, provider_opts)

@spec resolve_model_payload(
  atom(),
  keyword()
) ::
  {:ok, CliSubprocessCore.ModelRegistry.selection()} | {:error, ASM.Error.t()}

schema()

@spec schema() :: keyword()

validate(opts, provider_schema \\ [])

@spec validate(keyword(), keyword()) :: {:ok, t()} | {:error, ASM.Error.t()}

validate!(opts, provider_schema \\ [])

@spec validate!(keyword(), keyword()) :: t()

validate_model_payload(value, key)