Validixir.Success (validixir v0.1.1)

Module containing data definition and functionality concering a Success. An Succes is a struct representing a successful validation.

A Success consists of the following:

  • A candidate, representing the value that was validated.

Link to this section Summary

Functions

Smart constructor of a success.

Applies a function to the candidate of a success.

Returns true if a value is a success.

Link to this section Types

Link to this type

some_inner_t()

@type some_inner_t() :: any()
@type t(inner_t) :: %Validixir.Success{candidate: inner_t}

Link to this section Functions

Link to this function

make(candidate)

@spec make(some_inner_t()) :: t(some_inner_t())

Smart constructor of a success.

Link to this function

map(success, f)

@spec map(t(some_inner_t()), (some_inner_t() -> any())) :: t(any())

Applies a function to the candidate of a success.

examples

Examples

iex> Validixir.Success.map(Validixir.Success.make(0), fn a -> a + 1 end)
%Validixir.Success{candidate: 1}
@spec success?(any()) :: boolean()

Returns true if a value is a success.

examples

Examples

iex> f = Validixir.Failure.make([])
iex> Validixir.Success.success?(f)
false

iex> s = Validixir.Success.make(1)
iex> Validixir.Success.success?(s)
true