AddValueToSplayTree • BalanceSplayTree • CloneSplayTree • CompareSplayTreeString • CompareSplayTreeStringInfo • DeleteNodeByValueFromSplayTree • DeleteNodeFromSplayTree • DestroySplayTree • GetNextKeyInSplayTree • GetNextValueInSplayTree • GetValueFromSplayTree • GetNumberOfNodesInSplayTree • IterateOverSplayTree • NewSplayTree • RemoveNodeByValueFromSplayTree • RemoveNodeFromSplayTree • ResetSplayTree • ResetSplayTreeIterator • SplaySplayTree
AddValueToSplayTree
AddValueToSplayTree() adds the given key and value to the splay-tree. Both key and value are used as is, without coping or cloning. It returns WizardTrue on success, otherwise WizardFalse.
The format of the AddValueToSplayTree method is:
WizardBooleanType AddValueToSplayTree(SplayTreeInfo *splay_tree, const void *key,const void *value)
A description of each parameter follows:
- splay_tree
- The splay-tree info.
- key
- The key.
- value
- The value.
BalanceSplayTree
BalanceSplayTree() balances the splay-tree.
The format of the BalanceSplayTree method is:
void *BalanceSplayTree(SplayTreeInfo *splay_tree,const void *key)
A description of each parameter follows:
- splay_tree
- The splay-tree info.
- key
- The key.
CloneSplayTree
CloneSplayTree() clones the splay tree.
The format of the CloneSplayTree method is:
SplayTreeInfo *CloneSplayTree(SplayTreeInfo *splay_tree, void *(*clone_key)(void *),void *(*cline_value)(void *))
A description of each parameter follows:
- splay_tree
- The splay tree.
- clone_key
- The key clone method, typically ConstantString(), called whenever a key is added to the splay-tree.
- clone_value
- The value clone method; typically ConstantString(), called whenever a value object is added to the splay-tree.
CompareSplayTreeString
CompareSplayTreeString() method finds a node in a splay-tree based on the contents of a string.
The format of the CompareSplayTreeString method is:
int CompareSplayTreeString(const void *target,const void *source)
A description of each parameter follows:
- target
- The target string.
- source
- The source string.
CompareSplayTreeStringInfo
CompareSplayTreeStringInfo() finds a node in a splay-tree based on the contents of a string.
The format of the CompareSplayTreeStringInfo method is:
int CompareSplayTreeStringInfo(const void *target,const void *source)
A description of each parameter follows:
- target
- The target string.
- source
- The source string.
DeleteNodeByValueFromSplayTree
DeleteNodeByValueFromSplayTree() deletes a node by value from the splay-tree.
The format of the DeleteNodeByValueFromSplayTree method is:
WizardBooleanType DeleteNodeByValueFromSplayTree( SplayTreeInfo *splay_tree,const void *value)
A description of each parameter follows:
- splay_tree
- The splay-tree info.
- value
- The value.
DeleteNodeFromSplayTree
DeleteNodeFromSplayTree() deletes a node from the splay-tree.
The format of the DeleteNodeFromSplayTree method is:
WizardBooleanType DeleteNodeFromSplayTree(SplayTreeInfo *splay_tree, const void *key)
A description of each parameter follows:
- splay_tree
- The splay-tree info.
- key
- The key.
DestroySplayTree
DestroySplayTree() destroys the splay-tree.
The format of the DestroySplayTree method is:
SplayTreeInfo *DestroySplayTree(SplayTreeInfo *splay_tree)
A description of each parameter follows:
- splay_tree
- The splay tree.
GetNextKeyInSplayTree
GetNextKeyInSplayTree() gets the next key in the splay-tree.
The format of the GetNextKeyInSplayTree method is:
const void *GetNextKeyInSplayTree(SplayTreeInfo *splay_tree)
A description of each parameter follows:
- splay_tree
- The splay tree.
- key
- The key.
GetNextValueInSplayTree
GetNextValueInSplayTree() gets the next value in the splay-tree.
The format of the GetNextValueInSplayTree method is:
const void *GetNextValueInSplayTree(SplayTreeInfo *splay_tree)
A description of each parameter follows:
- splay_tree
- The splay tree.
- key
- The key.
GetValueFromSplayTree
GetValueFromSplayTree() gets a value from the splay-tree by its key.
The format of the GetValueFromSplayTree method is:
const void *GetValueFromSplayTree(SplayTreeInfo *splay_tree, const void *key)
A description of each parameter follows:
- splay_tree
- The splay tree.
- key
- The key.
GetNumberOfNodesInSplayTree
GetNumberOfNodesInSplayTree() returns the number of nodes in the splay-tree.
The format of the GetNumberOfNodesInSplayTree method is:
size_t GetNumberOfNodesInSplayTree( const SplayTreeInfo *splay_tree)
A description of each parameter follows:
- splay_tree
- The splay tree.
IterateOverSplayTree
IterateOverSplayTree() iterates over the splay-tree.
The format of the IterateOverSplayTree method is:
int IterateOverSplayTree(SplayTreeInfo *splay_tree, int (*method)(NodeInfo *,void *),const void *value)
A description of each parameter follows:
- splay_tree
- The splay-tree info.
- method
- The method.
- value
- The value.
NewSplayTree
NewSplayTree() returns a pointer to a SplayTreeInfo structure initialized to default values.
The format of the NewSplayTree method is:
SplayTreeInfo *NewSplayTree(int (*compare)(const void *,const void *), void *(*relinquish_key)(void *),void *(*relinquish_value)(void *))
A description of each parameter follows:
- compare
- The compare method.
- relinquish_key
- The key deallocation method, typically RelinquishWizardMemory(), called whenever a key is removed from the splay-tree.
- relinquish_value
- The value deallocation method; typically RelinquishWizardMemory(), called whenever a value object is removed from the splay-tree.
RemoveNodeByValueFromSplayTree
RemoveNodeByValueFromSplayTree() removes a node by value from the splay-tree and returns its key.
The format of the RemoveNodeByValueFromSplayTree method is:
void *RemoveNodeByValueFromSplayTree(SplayTreeInfo *splay_tree, const void *value)
A description of each parameter follows:
- splay_tree
- The splay-tree info.
- value
- The value.
RemoveNodeFromSplayTree
RemoveNodeFromSplayTree() removes a node from the splay-tree and returns its value.
The format of the RemoveNodeFromSplayTree method is:
void *RemoveNodeFromSplayTree(SplayTreeInfo *splay_tree,const void *key)
A description of each parameter follows:
- splay_tree
- The splay-tree info.
- key
- The key.
ResetSplayTree
ResetSplayTree() resets the splay-tree. That is, it deletes all the nodes from the tree.
The format of the ResetSplayTree method is:
ResetSplayTree(SplayTreeInfo *splay_tree)
A description of each parameter follows:
- splay_tree
- the splay tree.
ResetSplayTreeIterator
ResetSplayTreeIterator() resets the splay-tree iterator. Use it in conjunction with GetNextValueInSplayTree() to iterate over all the nodes in the splay-tree.
The format of the ResetSplayTreeIterator method is:
ResetSplayTreeIterator(SplayTreeInfo *splay_tree)
A description of each parameter follows:
- splay_tree
- The splay tree.
SplaySplayTree
SplaySplayTree() splays the splay-tree.
The format of the SplaySplayTree method is:
void SplaySplayTree(SplayTreeInfo *splay_tree,const void *key, NodeInfo **node,NodeInfo **parent,NodeInfo **grandparent)
A description of each parameter follows:
- splay_tree
- The splay-tree info.
- key
- The key.
- node
- The node.
- parent
- The parent node.
- grandparent
- The grandparent node.