- Mar 08, 2021
-
-
Carlos Galindo authored
-
Carlos Galindo authored
* VariableAction stores pending connections between trees. * Update JavaParser from 3.17.0 to 3.19.0 * Object trees in assignments and return statements are linked to the appropriate expressions. * Return trees are linked interprocedurally. * ReturnStmt variable actions are now all generated by VariableVisitor. * CallNode.Return are now generated by VariableVisitor instead of the SDG after the interprocedural finders. * Actual-in nodes are now generated based on the expressions used, and then linked to the actual-in generated by the InterproceduralUsageFinder. * We now accept calls as scope or argument of another call. * ClassGraph is now a singleton. ClassGraph#newInstance() generates a new one. * ClassGraph can generate a complete ObjectTree for a given type. * MemberNode's parent can now be any node, and can be set after creation. * New slicing algorithm for the JSysDG. * Added interprocedural object-flow arcs. * Added ObjectFlow and Flow dependency arcs. * Introduced test to guarantee that interprocedural arcs are either input xor output. * Updated tests
-
- Mar 02, 2021
-
-
Carlos Galindo authored
* JSysPDG: inserts IO and Member nodes before generating data dependencies. * ObjectTree is now a real tree. * ObjectTree has string and node iterables. * VariableAction can be cloned with #createCopy(), the graphNode is set to null. * VariableAction.Movable can't have object tree, getter obtains inner's.
-
- Mar 01, 2021
-
-
Carlos Galindo authored
* IAF now use a map of VariableAction instead of a set of StoredAction. * They contain a map with stored actions. * In their state, they accumulate the tree of repeated actions.
-
Carlos Galindo authored
Resolve "Flag `-o` does not work" Closes #47 See merge request !55
-
Carlos Galindo authored
-
Carlos Galindo authored
Fix bad smells Closes #53, #52, and #54 See merge request !57
-
Carlos Galindo authored
Closes #53
-
Carlos Galindo authored
* Closes #52 * Simplify calls and remove unnecessary searches. * Make dotexporter functional
-
Carlos Galindo authored
Closes #54
-
Carlos Galindo authored
Resolve "Summary arcs must be generated between actual-in and return nodes" Closes #51 See merge request !56
-
Carlos Galindo authored
-
Carlos Galindo authored
Dynamic initializerDeclaration in ConstructorDeclaration See merge request !52
-
Carlos Galindo authored
-
- Feb 28, 2021
-
-
Carlos Galindo authored
-
Carlos Galindo authored
* Small regression: only the last field declared in a constructor is included. This is expected, and will be solved with the new object dependencies. * Integrate ImplicitNode as boolean in GraphNode. * Updated tests * Slice now allows the insertion of implicit instructions, but does not output them when generating the AST. * Removed list of nodes from slice, as the map contains a superset of the information of the list.
-
- Feb 26, 2021
-
-
Carlos Galindo authored
* Update tests with better slices. * GraphNode#addActionsAfterCall uses varargs instead of a set. * Improved handling of super() and this() calls. * ImplicitNode is now generic * Improved interface in JSysCFG to insert new instructions ad-hoc. * Constructors now have an implicit "return this". * Removed JSysCFG#getDeclarationClass, ASTUtils has a similar method. * VariableActions can now store (but don't propagate) a tree of fields acted upon. * VariableActions can now take null as variable, or any possible expression. * Automatic generation of the actions for fields (USE(a.x) generates USE(a)). * Conversely, fields now either traverse their scope or declare an action. * Handling of ThisExpr. * Better initialization naming for fields. * Implemented default initialization of fields if none is present. * InterproceduralActionFinders: * Unified the behaviour of #initialValue() * Improved generation of actual-in/out for fields. Caveats: * InterproceduralActionFinders cannot process VariableActions that don't resolve into a ResolvedValueDeclaration. Thus, 'this' must be declared when entering a method or constructor declaration. * Removed type from IO nodes, as it required resolving expressions and was unnecessary for the slicer.
-
Carlos Galindo authored
-
Carlos Galindo authored
-
- Feb 25, 2021
-
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
Carlos Galindo authored
-
- Feb 24, 2021
-
-
Carlos Galindo authored
* VariableAction stores the real name and the variable may be null. * VariableVisitor entrypoint must be #startVisit().
-
- Feb 23, 2021
-
-
Sergio Pérez authored
-
Sergio Pérez authored
-
Sergio Pérez authored
Updated variable_pattern_regex to match VariableActions regarding object fields accessed in different ways
-
- Feb 16, 2021
-
-
Sergio Pérez authored
-
- Feb 12, 2021
-
-
Sergio Pérez authored
-
Sergio Pérez authored
-