void AVL<T>::cloneHelper(Node* thisTree, Node* originalTree){ thisTree = getNode(originalTree->element); if(originalTree->left != NULL) cloneHelper(thisTree->left, originalTree->left); if(originalTree->right != NULL) cloneHelper(thisTree->right, originalTree->right); }
RandomFloat* RandomFloat::clone() { RandomFloat* lhs = new RandomFloat; cloneHelper(*lhs); return lhs; }
IntToFloat* IntToFloat::clone() { IntToFloat* lhs = new IntToFloat; cloneHelper(*lhs); return lhs; }
SequenceInt* SequenceInt::clone() { SequenceInt* lhs = new SequenceInt; cloneHelper(*lhs); return lhs; }
RandomInt* RandomInt::clone() { RandomInt* lhs = new RandomInt(); cloneHelper(*lhs); return lhs; }
SublevelNode* SublevelNode::clone() { SublevelNode* lhs = new SublevelNode; cloneHelper(*lhs); return lhs; }
void AVL<T>::clone(AVL* avl){ cloneHelper(root, avl.root); }
RegionNode* RegionNode::clone() { RegionNode* lhs = new RegionNode; cloneHelper(*lhs); return lhs; }