create a static call graph from a Maple procedure
Maple procedure, appliable module, or set of procedures or appliable modules
one or more options as described below
The options argument can contain one or more of the options shown below.
maxdepth=posint or infinity
The maximum depth of procedure calls to examine. The default is infinity, meaning the static call graph is traversed to arbitrary depth.
StaticCallGraph(P) returns a directed graph which represents a static call graph for the input P. The vertices of the graph are strings which represent procedures or appliable modules, and a directed arc exists from f to g when there is an explicit reference to g in the body of f.
The output is a Maple graph suitable for use with commands from the GraphTheory package.
This command generates only simple graphs; recursive calls in a procedure body are not translated into self-loops in the resulting graph.
This command simply examines the procedure body for instances of procedure names. There are many methods of invoking a procedure in Maple (for example, by constructing the procedure's name with cat or parse) which this command makes no effort to detect.
G≔Graph 1: a directed unweighted graph with 22 vertices and 24 arc(s)
The CodeTools[ProgramAnalysis][StaticCallGraph] command was introduced in Maple 2020.
For more information on Maple 2020 changes, see Updates in Maple 2020.
Download Help Document
What kind of issue would you like to report? (Optional)