vow v0.0.1 Vow.Function View Source

TODO

Link to this section Summary

Link to this section Types

Link to this type

conformed_function()

View Source
conformed_function() :: %{
  args: [conformed_arg :: term()] | nil,
  ret: conformed_ret :: term() | nil,
  fun: %{args: [conformed_arg :: term()], ret: conformed_ret :: term()} | nil
}
Link to this type

f()

View Source
f() :: (... -> any()) | mfa() | {module(), atom()}
Link to this type

fun_value()

View Source
fun_value() :: %{args: [term()], ret: term()}
Link to this type

t()

View Source
t() :: %Vow.Function{
  args: [Vow.t()] | nil,
  fun: Vow.t() | nil,
  ret: Vow.t() | nil
}

Link to this section Functions

Link to this function

conform(spec, fun, args \\ [])

View Source
conform(t(), f(), args :: [term()]) ::
  {:ok, conformed_function()}
  | {:error, {:args | :ret | :fun, [Vow.ConformError.Problem.t()]}}