DependencyTree
in package
Table of Contents
- $raw_data : mixed
- $raw_data_order : mixed
- $provide_id_raw_data : mixed
- $provide_ids : mixed
- $require_id_raw_data : mixed
- $tree : mixed
- $tree_ordering : mixed
- _buildTree() : array<string|int, mixed>|bool
- _findDepth() : int
- Get an object's depth by traversing all its parents (recursively) until there are no edges left. The count of edges is the 'depth'.
- addNode() : bool
- getAllNodesInOrder() : array<string|int, mixed>
- getTreeOrdering() : bool
- markTreeNumber() : mixed
- Traverse a tree starting with a node.
- setTreeOrdering() : mixed
- addObjectByProvideIDs() : bool
- addObjectByRequireIDs() : bool
- addProvideIDs() : bool
- deleteOrphanRequireIDs() : bool
- getProvideIDs() : array<string|int, mixed>|bool|null
- sort() : int
- 02-Nov-2006: changing the sort functionality to depth-based
Properties
$raw_data
public
mixed
$raw_data
= \null
$raw_data_order
public
mixed
$raw_data_order
= []
$provide_id_raw_data
protected
mixed
$provide_id_raw_data
= []
$provide_ids
protected
mixed
$provide_ids
= []
$require_id_raw_data
protected
mixed
$require_id_raw_data
= []
$tree
protected
mixed
$tree
= \null
$tree_ordering
protected
mixed
$tree_ordering
= \false
Methods
_buildTree()
public
_buildTree() : array<string|int, mixed>|bool
Return values
array<string|int, mixed>|bool —_findDepth()
Get an object's depth by traversing all its parents (recursively) until there are no edges left. The count of edges is the 'depth'.
public
_findDepth(object $obj[, array<string|int, mixed> &$marked_edges = [] ], int $depth) : int
Parameters
- $obj : object
- $marked_edges : array<string|int, mixed> = []
- $depth : int
Return values
int —addNode()
public
addNode(string $id, string|int|array<string|int, mixed> $requires, string|int|array<string|int, mixed> $provides, int $order) : bool
Parameters
- $id : string
-
ID of node
- $requires : string|int|array<string|int, mixed>
-
array of IDs this node requires
- $provides : string|int|array<string|int, mixed>
-
array of IDs this node provides
- $order : int
-
integer to help resolve circular dependencies, lower order comes first.
Return values
bool —getAllNodesInOrder()
public
getAllNodesInOrder() : array<string|int, mixed>
Return values
array<string|int, mixed> —getTreeOrdering()
public
getTreeOrdering() : bool
Return values
bool —markTreeNumber()
Traverse a tree starting with a node.
public
markTreeNumber( $node, $tree_number[, array<string|int, mixed> $marked_edges = [] ]) : mixed
Parameters
Return values
mixed —setTreeOrdering()
public
setTreeOrdering( $bool) : mixed
Parameters
Return values
mixed —addObjectByProvideIDs()
private
addObjectByProvideIDs(string $provide_ids, object $obj) : bool
Parameters
- $provide_ids : string
-
UUID
- $obj : object
Return values
bool —addObjectByRequireIDs()
private
addObjectByRequireIDs(string $requires_ids, object $obj) : bool
Parameters
- $requires_ids : string
-
UUID
- $obj : object
Return values
bool —addProvideIDs()
private
addProvideIDs( $provide_arr) : bool
Parameters
Return values
bool —deleteOrphanRequireIDs()
private
deleteOrphanRequireIDs() : bool
Return values
bool —getProvideIDs()
private
getProvideIDs() : array<string|int, mixed>|bool|null
Return values
array<string|int, mixed>|bool|null —sort()
02-Nov-2006: changing the sort functionality to depth-based
private
sort( $a, $b) : int