Packages
jsv
0.19.5
0.21.2
0.21.1
0.21.0
0.20.0
0.19.6
0.19.5
0.19.4
0.19.3
0.19.2
0.19.1
0.19.0
0.18.3
0.18.2
0.18.1
0.18.0
0.17.1
0.17.0
0.16.0
0.15.2
0.15.1
0.15.0
0.14.0
0.13.1
0.13.0
0.12.0
0.11.5
0.11.4
0.11.3
retired
0.11.2
0.11.1
0.11.0
0.10.1
0.10.0
0.9.0
0.8.1
0.8.0
0.7.2
0.7.1
0.7.0
0.6.3
0.6.2
0.6.0
0.5.1
0.5.0
0.4.0
0.3.0
0.2.0
0.1.0
A JSON Schema Validator with complete support for the latest specifications.
Current section
Files
Jump to
Current section
Files
lib/jsv/boolean_schema.ex
defmodule JSV.BooleanSchema do
alias JSV.Builder
@moduledoc """
Represents a boolean schema. Boolean schemas accept or reject any data
according to their boolean value.
This is very often used with the `additionalProperties` keyword.
"""
@enforce_keys [:valid?, :schema_path]
defstruct @enforce_keys
@type t :: %__MODULE__{valid?: boolean, schema_path: [Builder.path_segment()]}
@doc """
Returns a `#{inspect(__MODULE__)}` struct wrapping the given boolean.
"""
@spec of(boolean, [Builder.path_segment()]) :: t
def of(valid?, schema_path) when is_boolean(valid?) do
%__MODULE__{valid?: valid?, schema_path: schema_path}
end
end