1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-15 10:30:25 -08:00
Using TREE_ELT where appropriate.
Using AVERT consistently on Tree, but see job003691.

Copied from Perforce
 Change: 184724
 ServerID: perforce.ravenbrook.com
This commit is contained in:
Richard Brooksby 2014-03-11 14:37:10 +00:00
parent 1f2cf6aa56
commit 16e0798806
4 changed files with 14 additions and 14 deletions

View file

@ -34,8 +34,8 @@ typedef struct CBSBlockStruct {
#define CBSBlockSize(block) AddrOffset((block)->base, (block)->limit)
#define cbsOfTree(_tree) PARENT(CBSStruct, tree, (_tree))
#define cbsBlockOfNode(_node) PARENT(CBSBlockStruct, node, (_node))
#define cbsOfTree(_tree) TREE_ELT(CBS, tree, _tree)
#define cbsBlockOfNode(_node) PARENT(CBSBlockStruct, node, _node)
#define treeOfCBS(cbs) (&((cbs)->tree))
#define nodeOfCBSBlock(block) (&((block)->node))
#define keyOfCBSBlock(block) (&((block)->base))

View file

@ -27,7 +27,7 @@ typedef struct tagStruct {
} tagStruct;
#define TagTree(tag) (&(tag)->treeStruct)
#define TagOfTree(tree) PARENT(tagStruct, treeStruct, tree)
#define TagOfTree(tree) TREE_ELT(tag, treeStruct, tree)
typedef tagStruct *Tag;

View file

@ -78,7 +78,7 @@ Compare TreeFind(Tree *treeReturn, Tree root, TreeKey key, TreeCompare compare)
Tree node, parent;
Compare cmp = CompareEQUAL;
AVER(TreeCheck(root));
AVERT(Tree, root);
AVER(treeReturn != NULL);
AVER(FUNCHECK(compare));
/* key is arbitrary */
@ -125,7 +125,7 @@ Bool TreeInsert(Tree *treeReturn, Tree root, Tree node,
Compare cmp;
AVER(treeReturn != NULL);
AVER(TreeCheck(root));
AVER(Tree, root);
AVER(TreeCheckLeaf(node));
AVER(FUNCHECK(compare));
/* key is arbitrary */
@ -149,7 +149,7 @@ Bool TreeInsert(Tree *treeReturn, Tree root, Tree node,
default:
NOTREACHED;
*treeReturn = NULL;
return cmp;
return FALSE;
}
*treeReturn = root;
@ -180,7 +180,7 @@ Bool TreeTraverseMorris(Tree tree, TreeVisitor visit,
Tree node;
Bool visiting = TRUE;
AVER(TreeCheck(tree));
AVERT(Tree, tree);
AVER(FUNCHECK(visit));
/* closureP, closureS arbitrary */
@ -272,7 +272,7 @@ Bool TreeTraverse(Tree tree,
{
Tree parent, node;
AVER(TreeCheck(tree));
AVERT(Tree, tree);
AVER(FUNCHECK(visit));
/* closureP, closureS arbitrary */
@ -373,8 +373,8 @@ void TreeRotateRight(Tree *treeIO) {
*
* Descends the left spine of a tree, updating each node's left child
* to point to its parent instead. The root's left child is set to
* TreeEMPTY. Returns the leftmost child in *leftReturn, or TreeEMPTY
* if the tree was empty.
* TreeEMPTY. Returns the leftmost child, or TreeEMPTY if the tree
* was empty.
*/
Tree TreeReverseLeftSpine(Tree tree)
@ -400,8 +400,8 @@ Tree TreeReverseLeftSpine(Tree tree)
*
* Descends the right spine of a tree, updating each node's right child
* to point to its parent instead. The root's right child is set to
* TreeEMPTY. Returns the rightmost child in *rightReturn, or TreeEMPTY
* if the tree was empty.
* TreeEMPTY. Returns the rightmost child or TreeEMPTY if the tree
* was empty.
*/
Tree TreeReverseRightSpine(Tree tree)

View file

@ -34,13 +34,13 @@ extern Count TreeDebugCount(Tree tree, TreeCompare compare, TreeKeyMethod key);
AVER(_tree != NULL); \
_tree->left = TreeEMPTY; \
_tree->right = TreeEMPTY; \
AVER(TreeCheck(_tree)); \
AVERT(Tree, _tree); \
END
#define TreeFinish(tree) \
BEGIN \
Tree _tree = (tree); \
AVER(TreeCheckLeaf(_tree)); \
AVERT(Tree, _tree); \
END
#define TREE_ELT(type, field, node) \