CPC G06F 8/73 (2013.01) [G06F 8/75 (2013.01); G06F 16/9024 (2019.01)] | 20 Claims |
1. A non-transitory, computer-readable program product having code stored therein for analyzing source code, wherein execution of the code by one or more processors of a computer system causes the computer system to perform operations comprising:
accessing the source code from an electronic memory storage;
analyzing code elements of the accessed source code to extract node data, edge data, and bindings data, wherein the extraction of the node data, the edge data, and the bindings data comprises:
generating nodes of an abstract syntax tree (AST) from the accessed source code, wherein the AST is a tree model of a node structure of the source code;
storing AST node data in a relational database structure in a relational database; accessing the source code and the AST node data in the relational database; and
generating the node data, the edge data, and the bindings data from the source code and the AST node data in the relational database;
converting the node data, the edge data, and the bindings data, into a graph database structure; and
storing the graph database structure in the electronic memory storage to facilitate human apprehension of the source code.
|