View Source Minipeg.Input (Minipeg v0.5.0)

An input wrapper

Summary

Types

@type ast_list_t() :: [ast_t()]
@type ast_t() :: any()
@type binaries() :: [binary()]
@type binary?() :: maybe(binary())
@type char_set_t() :: [binary()] | binary()
Link to this type

either(success_t, error_t)

View Source
@type either(success_t, error_t) :: {:ok, success_t} | {:error, error_t}
@type input_t() :: binary() | [binary()] | t()
@type maybe(t) :: nil | t
@type parser_function_t() :: (t(), Minipeg.Cache.t(), binary() -> result_t())
@type position_t() :: {pos_integer(), pos_integer()}
@type result_t() :: Minipeg.Failure.t() | Minipeg.Ignore.t() | Minipeg.Success.t()
@type satisfier_result_t() :: either(any(), binary())
@type satisfier_t() :: (any() -> satisfier_result_t())
@type str_or_count_t() :: binary() | non_neg_integer()
@type t() :: %Minipeg.Input{
  col: pos_integer(),
  context: map(),
  input: binary(),
  lnb: pos_integer()
}
@type take_and_rest_t() :: {binary(), t()}

Functions

Link to this function

drop(inp, str_or_count \\ 1)

View Source
@spec drop(t(), str_or_count_t()) :: t()
Link to this function

new(source, col \\ 1, lnb \\ 1, context \\ %{})

View Source
@spec position(t()) :: position_t()
Link to this function

report_position(input, name \\ nil)

View Source
@spec report_position(t(), binary?()) :: binary()
Link to this function

take(input, str_or_count \\ 1)

View Source
@spec take(t(), str_or_count_t()) :: take_and_rest_t()