Parent Lib Unit is one of the interactive graphs Understand can draw of your code — call trees, dependencies, control flow, and more.
Parent Lib Unit
Languages: AdaTargets: Packages, Subprograms
Variants: Classic, Cluster, Compare, Relationship, Simplified
Show the Ada package a selected library unit is declared under, and its own parent packages in turn.
For a selected package, function, or procedure declared with dotted (child unit) notation, this shows an edge to the package it's declared under, then recurses upward into that package's own parent, building a multi-level ancestry tree. Only a package can have children, so a function or procedure is always the bottom of this chain, never itself a parent.
Rooted at Telemetry.Sensors.Analog below, the graph shows an edge to Telemetry.Sensors, then continues up to the top-level package Telemetry. The inverse graph, Child Lib Units, shows the reverse relationship — everything declared under the selected package.
See the following code and corresponding graph
package Telemetry is
end Telemetry;
package Telemetry.Sensors is
end Telemetry.Sensors;
package Telemetry.Sensors.Analog is
Max_Channels : constant := 8;
end Telemetry.Sensors.Analog;
Parent Lib Unit - Classic
The Classic variant is similar to the Simplified variant, showing all relationships in a simple tree, but it uses a custom layout algorithm instead of Graphviz.
Parent Lib Unit - Cluster
The Cluster variant groups entities by their containing class/file/architecture.
Parent Lib Unit - Compare
The Compare variant shows how the graph has changed relative to the project's comparison database.
Parent Lib Unit - Relationship
The Relationship variant filters the graph to only paths connecting the two entities.
Parent Lib Unit - Simplified
The Simplified variant shows all relationships in a simple tree (no clusters)