Extracts gen_statem states, transitions, and event handlers from module IR.
Summary
Functions
Extracts gen_statem state machine information from module IR nodes.
Detects gen_statem from @behaviour :gen_statem or callback_mode/0.
Functions
@spec analyze([Reach.IR.Node.t()]) :: map() | nil
Extracts gen_statem state machine information from module IR nodes.
Returns a map with :callback_mode, :init_state, :states, and :transitions.
Each state has its event handlers. Each transition has source, target,
event type, and the function node that triggers it.
Detects gen_statem from @behaviour :gen_statem or callback_mode/0.