SiteMaps.Process (site_maps v0.1.0)

Copy Markdown View Source

A sitemap process declared with SiteMaps.process/3.

Summary

Functions

Builds the argument map of an execution: declared defaults (values or 0-arity functions) are evaluated, given values are cast to the declared types, and unknown names raise.

A process is dynamic when it declares arguments, so it can run many times with different ones.

Types

arg_type()

@type arg_type() :: :integer | :string | :date | :boolean | :atom

t()

@type t() :: %SiteMaps.Process{
  args: [{atom(), arg_type()}],
  defaults: keyword(),
  location: String.t() | nil,
  name: atom()
}

Functions

build_args(process, given)

@spec build_args(t(), keyword() | map()) :: map()

Builds the argument map of an execution: declared defaults (values or 0-arity functions) are evaluated, given values are cast to the declared types, and unknown names raise.

dynamic?(process)

@spec dynamic?(t()) :: boolean()

A process is dynamic when it declares arguments, so it can run many times with different ones.