View Source OpenApiSpex.Discriminator (open_api_spex v3.16.0)

Defines the OpenApiSpex.Discriminator.t type.

Link to this section Summary

Functions

Resolve the schema that should be used to cast/validate a value using a Discriminator.

Link to this section Types

@type t() :: %OpenApiSpex.Discriminator{
  extensions: %{required(String.t()) => any()} | nil,
  mapping: %{required(String.t()) => String.t()} | nil,
  propertyName: String.t()
}

Discriminator Object

When request bodies or response payloads may be one of a number of different schemas, a discriminator object can be used to aid in serialization, deserialization, and validation. The discriminator is a specific object in a schema which is used to inform the consumer of the specification of an alternative schema based on the value associated with it.

Link to this section Functions

Link to this function

resolve(map, value, schemas)

View Source
@spec resolve(t(), map(), %{required(String.t()) => OpenApiSpex.Schema.t()}) ::
  {:ok, OpenApiSpex.Schema.t()} | {:error, String.t()}

Resolve the schema that should be used to cast/validate a value using a Discriminator.