GeneralTree: General Tree Data Structure

A general tree data structure implementation in R.

Install the latest version of this package by entering the following in R:
AuthorAnton Bossenbroek [aut, cre]
Date of publication2016-09-08 20:57:16
MaintainerAnton Bossenbroek <>
LicenseApache License (== 2.0)

View on CRAN

Man pages

addChild: Add a child at a point in the tree.

addSibling: Add a sibling to the current node.

addSiblingNode: Add a node to the list of siblings of the current node. Convert a GeneralTree to a data frame.

as.GeneralTree: Convert an object to a GeneralTree. Convert a data frame to a GeneralTree.

as.GeneralTree.expression: Convert a R parsed expression to a GeneralTree.

branch_depth: Get the depth of a branch.

branchToList: Convert a branch to a list.

dataWorker: Return the data associated with a node.

deep_clone: Deep clone a General tree

deep_clone.GeneralTree: Deep clone a General Tree.

delete: Delete all a node and all nodes below that node.

deleteId: Delete a node with a given id.

equals-.GeneralTree: Deep clone a General Tree.

GeneralTree: A tree that can have multiple childeren per parent.

generate_grViz: Create a DiagrammeR graph that represents the tree.

getChildData: Get the data of the child nodes below the current node.

getChildId: Get the ids of the child nodes below the current node.

getChildNodes: Get all the child nodes below the current node.

getIterVal: Function heavily inspired by iterators package.

getIterVal.GeneralTreeIter: Function heavily inspired by iterators package.

have_child: Tell whether the current node has childeren.

have_parent: Returns true when the node has a parent.

have_private_siblings: Tell whether the current node has private siblings.

have_siblings: Tell whether the current node has siblings.

id: Return the id of the current node.

initialize: Initialize a General Tree object.

isDiscovered: Informs whether the node has the discovered bit set.

is_last_sibling: Tell whether the current node is the last sibling.

is_root: Tell whether the passed node is the root of the tree.

isRootDiscovered: Returns whether the node has the is_root_discovered bit set.

isSingletonTree: Informs whether the tree is a singleton tree.

iteratorImpl: The implementation of the GeneralTree method iterator.

iter.GeneralTree: Internal function heavily inspired by iterators package.

left_child: Return the left child of the node.

nextElem.GeneralTree: Internal function heavily inspired by iterators package.

nextElem.GeneralTreeIter: Internal function heavily inspired by iterators package.

nextElemWorkerImpl: The implementation of the GeneralTree method nextElem.

nodeInfoToString: Convert a node to string.

parent: Get the parent of a node.

plot.GeneralTree: Plot a GeneralTree object.

print.GeneralTree: Print a GeneralTree object.

resetDiscovered: The implementation of the GeneralTree method iterator.

resetDiscoveredOnBranch: Reset the discover bit of all the nodes on the branch to...

root: Return the root of the node.

searchData: Search for an id in starting at a point in the tree and...

searchNode: Search for an id in starting at a point in the tree and...

setDiscovered: Set the discovered bit to a certain state.

set-.GeneralTree: Deep clone a General Tree.

setRootDiscovered: Set the root discovered bit to a certain state.

siblings: Return the private siblings of the node.

toString: Convert a branch to a string.

treeDepth: Get the depth of a tree.


addChild Man page
addSibling Man page
addSiblingNode Man page Man page
as.GeneralTree Man page Man page
as.GeneralTree.expression Man page
branch_depth Man page
branchToList Man page
dataWorker Man page
deep_clone Man page
deep_clone.GeneralTree Man page
delete Man page
deleteId Man page
GeneralTree Man page
<-.GeneralTree Man page
=.GeneralTree Man page
generate_grViz Man page
getChildData Man page
getChildId Man page
getChildNodes Man page
getIterVal Man page
getIterVal.GeneralTreeIter Man page
have_child Man page
have_parent Man page
have_private_siblings Man page
have_siblings Man page
id Man page
initialize Man page
isDiscovered Man page
is_last_sibling Man page
is_root Man page
isRootDiscovered Man page
isSingletonTree Man page
iteratorImpl Man page
iter.GeneralTree Man page
left_child Man page
nextElem.GeneralTree Man page
nextElem.GeneralTreeIter Man page
nextElemWorkerImpl Man page
nodeInfoToString Man page
parent Man page
plot.GeneralTree Man page
print.GeneralTree Man page
resetDiscovered Man page
resetDiscoveredOnBranch Man page
root Man page
searchData Man page
searchNode Man page
setDiscovered Man page
setRootDiscovered Man page
siblings Man page
toString Man page
treeDepth Man page


GeneralTree/R/operators.R GeneralTree/R/plot.R GeneralTree/R/print.R GeneralTree/R/casting.R GeneralTree/R/iterators.R GeneralTree/R/GeneralTree.R
GeneralTree/man/getIterVal.Rd GeneralTree/man/setRootDiscovered.Rd GeneralTree/man/getIterVal.GeneralTreeIter.Rd GeneralTree/man/getChildNodes.Rd GeneralTree/man/setDiscovered.Rd GeneralTree/man/is_root.Rd GeneralTree/man/toString.Rd GeneralTree/man/isSingletonTree.Rd GeneralTree/man/treeDepth.Rd GeneralTree/man/deep_clone.GeneralTree.Rd GeneralTree/man/as.GeneralTree.Rd GeneralTree/man/set-.GeneralTree.Rd GeneralTree/man/id.Rd GeneralTree/man/have_parent.Rd GeneralTree/man/nextElemWorkerImpl.Rd GeneralTree/man/left_child.Rd GeneralTree/man/getChildId.Rd GeneralTree/man/deep_clone.Rd GeneralTree/man/addSiblingNode.Rd GeneralTree/man/addChild.Rd GeneralTree/man/parent.Rd GeneralTree/man/equals-.GeneralTree.Rd GeneralTree/man/nodeInfoToString.Rd GeneralTree/man/root.Rd GeneralTree/man/ GeneralTree/man/dataWorker.Rd GeneralTree/man/resetDiscoveredOnBranch.Rd GeneralTree/man/resetDiscovered.Rd GeneralTree/man/siblings.Rd GeneralTree/man/branch_depth.Rd GeneralTree/man/iter.GeneralTree.Rd GeneralTree/man/nextElem.GeneralTree.Rd GeneralTree/man/plot.GeneralTree.Rd GeneralTree/man/branchToList.Rd GeneralTree/man/addSibling.Rd GeneralTree/man/generate_grViz.Rd GeneralTree/man/isDiscovered.Rd GeneralTree/man/nextElem.GeneralTreeIter.Rd GeneralTree/man/have_child.Rd GeneralTree/man/have_siblings.Rd GeneralTree/man/getChildData.Rd GeneralTree/man/delete.Rd GeneralTree/man/searchNode.Rd GeneralTree/man/searchData.Rd GeneralTree/man/as.GeneralTree.expression.Rd GeneralTree/man/initialize.Rd GeneralTree/man/is_last_sibling.Rd GeneralTree/man/iteratorImpl.Rd GeneralTree/man/ GeneralTree/man/have_private_siblings.Rd GeneralTree/man/print.GeneralTree.Rd GeneralTree/man/isRootDiscovered.Rd GeneralTree/man/deleteId.Rd GeneralTree/man/GeneralTree.Rd

Questions? Problems? Suggestions? or email at

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.