Matcha.Rewrite (Matcha v0.1.3) View Source
About rewrites.
Link to this section Summary
Link to this section Types
Specs
t() :: %Matcha.Rewrite{ bindings: %{ vars: %{required(var_ref()) => var_binding()}, count: non_neg_integer() }, context: Matcha.Context.t() | nil, env: Macro.Env.t(), source: Macro.t() }
Specs
Specs
Specs
var_ref() :: atom()
Link to this section Functions
Specs
binding(t(), var_ref()) :: var_binding()
Specs
Specs
Specs
pattern_to_spec(Matcha.Context.t(), Matcha.Pattern.t()) :: {:ok, Matcha.Spec.t()} | {:error, Matcha.Error.problems()}
Specs
problem({type, description}) :: Matcha.Error.problem() when type: :error | :warning, description: charlist() | String.t()
Specs
problems(problems) :: Matcha.Error.problems() when problems: [{type, description}], type: :error | :warning, description: charlist() | String.t()
Specs
resolve_context(atom() | Matcha.Context.t()) :: Matcha.Context.t() | no_return()
Specs
Specs
Specs
Specs
Specs
spec_to_pattern(Matcha.Spec.t()) :: {:ok, Matcha.Pattern.t()} | {:error, Matcha.Error.problems()}
Specs
spec_to_pattern!(Matcha.Spec.t()) :: Matcha.Pattern.t() | no_return()