Context
#
Learned in this study
#
Things to explore
#
Tools
#
- Graph/tree theory
- Linear algebra
Overview
#
- Use adjacency matrices to represent a control flow graph, allows you to do operations easily (get children (nodes to which a given node may go) = $V \cdot A$, get parents (nodes from which a given node might come from) = $V \cdot A^T$ (matrix transpose))
Basic program structure
#
- Fileset creation and filtering based on masks and regexes
- Initial AST construction for the fileset
- Analysis passes
- Output of diagnosis messages
Object analysis
#
- Track all properties
- Mark all properties that are read/written in each method
- Track function calls
- Track all methods signature (parameter types and return type)
See also
#
References
#
Theory
#
List of analysis
#