Skip to main content

Module behaviour_callback_resolve

Module behaviour_callback_resolve 

Source
Expand description

Compares a declared behaviour’s -callback surface between the two trees: the case where a pick adds an implementation written against the source’s callback set and lands on a target whose set is wider or shape-different. First-party behaviours only, the ones no pin snapshot covers. A legacy behaviour that declares its surface through behaviour_info/1 has no -callback forms and is invisible here, which withholds.

Functions§

analyse_behaviour_callbacks
Flag callbacks the target’s version of a declared behaviour requires that the source’s does not declare (an implementation written against the source is missing them), and shared callbacks whose normalized signatures disagree. Runs only for behaviours the added lines declare; an unreadable side withholds silently, and a callback the source requires but the target lacks is dead code, not a backport risk. One pass per (file, behaviour).