markdownz_ruler (markdownz v1.0.1)

View Source

Ordered, immutable rule lists used by the Markdown parser.

Summary

Types

handler/0

-type handler() :: fun() | {module(), atom()}.

rule/0

-type rule() :: #{name := atom(), enabled := boolean(), handler := handler()}.

ruler/0

-type ruler() :: [rule()].

Functions

after(Anchor, Name, Handler, Ruler)

-spec 'after'(atom(), atom(), handler(), ruler()) -> ruler().

before(Anchor, Name, Handler, Ruler)

-spec before(atom(), atom(), handler(), ruler()) -> ruler().

disable(Names, Ruler)

-spec disable(atom() | [atom()], ruler()) -> ruler().

enable(Names, Ruler)

-spec enable(atom() | [atom()], ruler()) -> ruler().

new(Rules)

-spec new([{atom(), handler()}]) -> ruler().

replace(Name, Handler, Ruler)

-spec replace(atom(), handler(), ruler()) -> ruler().

rules(Ruler)

-spec rules(ruler()) -> [rule()].