ExDebugger (ExDebugger v0.1.5) View Source
Usage: use ExDebugger
This effectively hijacks macros def and defp to auto-annotate the AST they receive compile time with strategically
placed debugging expressions where they generate debugging events:
- At the beginning of every
def/defp - At the end of every
def/defp - At every juncture in every polyfurcation expression which are:
- case
- cond
- if
- TODO:
- unless
- Case Arrows of Anonymous Functions
The various debugging events that get generated from such automated annotations should allow a developer to fully
introspect from beginning till end a particular traversal of the code path while having all the relevant
information available to understand how state changes accordingly. In the cases where more granularity is required,
one can always resort to the convenience of use ExDebugger.Manual.
This behaviour of annotating AST compile time in such an invasive and aggressive manner can be toggled in the debug
options file: your_project_path/debug_options.exs. This should facilitate regulating the granularity in which
debug events are generated during development without the headache of having to eliminate use ExDebugger from every
module when merging into master and deploying to production.