Imagix 4D User Guide


Relationship Types

A relationship is a directed, binary dependency between two symbols. The Imagix 4D database recognizes the following relationship types. Unless otherwise noted, the relationship data is collected and updated by analyzing your source code.

Aggregatesclass1 => class2
Represents class2 being used to declare members of class1.
Base Class Ofclass1 => class2
Represents class2 inheriting from class1.
Callsfunction => function
function => macro
Represents macro being expanded when function is preprocessed.
Containsdirectory => directory or file
file => symbol
class => member
function => local_variable
Declaresfile => symbol
class => member
Depends Onfile1 => file2
Indicates that rule exists in makefile that file1 is built from file2. This is collected using makefile_contents data source.
Dynamic Callsfunction1 => function2
Represents function1 calling function2 dynamically, specifically through invoke() in the Java reflection API. Info is collected via Reflection Analysis report.
Has Friendclass => class
Has Typevariable => data_type
function => data_type
Represents function using data_type for the declaration of parameter or local variable.
Includesfile1 => file2
Represents file1 including files2, through a line such as #include <file2>.
Overridden Byfunction1 => function2
Represents a class1 member being overridden by a class2 member, where class2 inherits class1.
Readsfunction => variable
function1 => function2
Represents function1 passing function2 as an argument.
Setsfunction => variable