lib/open_api/spec/external_documentation.ex
defmodule OpenAPI.Spec.ExternalDocumentation do
@moduledoc "Raw external documentation definition from the OpenAPI spec"
#
# Definition
#
@type t :: %__MODULE__{
description: String.t() | nil,
url: String.t()
}
defstruct [
:description,
:url
]
#
# Decoder
#
@doc false
@spec decode(map, map) :: {map, t}
def decode(state, yaml) do
external_doc = %__MODULE__{
url: Map.fetch!(yaml, "url"),
description: Map.get(yaml, "description")
}
{state, external_doc}
end
end