# Interface: com.pnfsoftware.jeb.core.units.code.ICodeHierarchy

Get a tree representing the code hierarchy of a code unit.

## Default Method: findNode
- parameter: `address`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.output.tree.ICodeNode`

Description: Retrieve the node at the provided address.
parameter: address: code node address
return: a node or null

## Abstract Method: findNode
- parameter: `address`, type: `java.lang.String`
- parameter: `bestEffort`, type: `boolean`
- return type: `com.pnfsoftware.jeb.core.output.tree.ICodeNode`

Description: Retrieve the node that best matches the provided address.
parameter: address: code node address
parameter: bestEffort: if true, will attempt to resolve to the nearest or most appropriate node if             the address is not the exact one of a node
return: a node or null

## Abstract Method: getRoot
- return type: `com.pnfsoftware.jeb.core.output.tree.ICodeNode`

Description: Retrieve the root code node.  

  Note: Code nodes should not to be confused with [code objects](com.pnfsoftware.jeb.core.units.code.ICodeItem.md).
return: the code node root, generally a package \(namespace\)

