Packages

Type-safe finite state machine library for Gleam

Current section

Files

Jump to
scamper src scamper@error.erl
Raw

src/scamper@error.erl

-module(scamper@error).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/scamper/error.gleam").
-export_type([callback_stage/0, transition_error/2]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
?MODULEDOC(" Error types for the scamper finite state machine library.\n").
-type callback_stage() :: on_exit | on_transition | on_enter.
-type transition_error(GYB, GYC) :: {invalid_transition, GYB, GYC} |
{guard_rejected, GYB, GYC, binary()} |
{already_final, GYB} |
{callback_failed, callback_stage(), binary()} |
{invariant_violation, binary()}.