nada_dsl.audit.strict module

Static analysis submodule that defines the highly limited “strict” subset of the Nada DSL syntax.

rules(a)[source]

Mark all ast nodes as prohibited (as a starting point for a strict static analysis).

types(a, env=None, func=False)[source]

Infer types of ast where possible, adding the type (or error) information in node attributes (and removing syntax restriction attributes as appropriate).

strict(source: str) report[source]

Take a Python source file representing a Nada DSL program, statically analyze it (against the “strict” Nada DSL subset), and generate an interactive HTML report detailing the results.