libtrbase
1.0.2
Web server and task management solution.
|
#include "trbase.h"
Go to the source code of this file.
Macros | |
#define | TR_TREE_RIGHT(node) (NULL!=(node)?(node)->right:NULL) |
#define | TR_TREE_LEFT(node) (NULL!=(node)?(node)->left:NULL) |
#define | TR_TREE_PARENT(node) (NULL!=(node)?(node)->parent:NULL) |
#define | TR_TREE_CHILD(node) (NULL==TR_TREE_RIGHT((node))?TR_TREE_LEFT((node)):TR_TREE_RIGHT((node))) |
#define | TR_TREE_SIBLING(node) |
#define | TR_TREE_UNCLE(node) |
#define | TR_TREE_REPLACE_NODE(root, node1, node2) |
#define | TR_TREE_ROT_RCLD_right(node) ((node)->left) |
#define | TR_TREE_ROT_RCLD_left(node) ((node)->right) |
#define | TR_TREE_ROTATE(lr, root, node) |
#define | TR_TREE_NODE_BLACK(node) (NULL == (node) || rbBlack == (node)->color) |
#define | TR_TREE_NODE_RED(node) (NULL == (node) || rbRed == (node)->color) |
#define | TR_TREE_NODE_STRICT_BLACK(node) (NULL != (node) && rbBlack == (node)->color) |
#define | TR_TREE_NODE_STRICT_RED(node) (NULL != (node) && rbRed == (node)->color) |
#define | TR_TREE_INORDER_SUCC(node, succ) |
#define | TR_TREE_FIND(node, search, found, comp) |
#define | TR_TREE_BALANCE_DELETE_CASE1(node) |
#define | TR_TREE_BALANCE_DELETE_CASE2(root, node, sibling) |
#define | TR_TREE_BALANCE_DELETE_CASE34(root, node, sibling) |
#define | TR_TREE_BALANCE_DELETE_CASE5(root, node, sibling) |
#define | TR_TREE_BALANCE_DELETE_CASE6(root, node, sibling) |
#define | TR_TREE_BALANCE_DELETE(root, node, sibling) |
#define | TR_TREE_BALANCE_INSERT_CASE1(node) |
#define | TR_TREE_BALANCE_INSERT_CASE2(node) |
#define | TR_TREE_BALANCE_INSERT_CASE3(node) |
#define | TR_TREE_BALANCE_INSERT_CASE4(root, node) |
#define | TR_TREE_BALANCE_INSERT_CASE5(root, node) |
#define | TR_TREE_BALANCE_INSERT(root, node) |
Enumerations | |
enum | TR_rbColor { rbBlack =1, rbRed =2 } |
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
Definition in file tree_macros.h.
#define TR_TREE_BALANCE_DELETE | ( | root, | |
node, | |||
sibling | |||
) |
Definition at line 214 of file tree_macros.h.
#define TR_TREE_BALANCE_DELETE_CASE1 | ( | node | ) |
Definition at line 130 of file tree_macros.h.
#define TR_TREE_BALANCE_DELETE_CASE2 | ( | root, | |
node, | |||
sibling | |||
) |
Definition at line 135 of file tree_macros.h.
#define TR_TREE_BALANCE_DELETE_CASE34 | ( | root, | |
node, | |||
sibling | |||
) |
Definition at line 148 of file tree_macros.h.
#define TR_TREE_BALANCE_DELETE_CASE5 | ( | root, | |
node, | |||
sibling | |||
) |
Definition at line 176 of file tree_macros.h.
#define TR_TREE_BALANCE_DELETE_CASE6 | ( | root, | |
node, | |||
sibling | |||
) |
Definition at line 194 of file tree_macros.h.
#define TR_TREE_BALANCE_INSERT | ( | root, | |
node | |||
) |
Definition at line 266 of file tree_macros.h.
#define TR_TREE_BALANCE_INSERT_CASE1 | ( | node | ) |
Definition at line 225 of file tree_macros.h.
#define TR_TREE_BALANCE_INSERT_CASE2 | ( | node | ) |
Definition at line 231 of file tree_macros.h.
#define TR_TREE_BALANCE_INSERT_CASE3 | ( | node | ) |
Definition at line 236 of file tree_macros.h.
#define TR_TREE_BALANCE_INSERT_CASE4 | ( | root, | |
node | |||
) |
Definition at line 246 of file tree_macros.h.
#define TR_TREE_BALANCE_INSERT_CASE5 | ( | root, | |
node | |||
) |
Definition at line 257 of file tree_macros.h.
#define TR_TREE_CHILD | ( | node | ) | (NULL==TR_TREE_RIGHT((node))?TR_TREE_LEFT((node)):TR_TREE_RIGHT((node))) |
Definition at line 32 of file tree_macros.h.
#define TR_TREE_FIND | ( | node, | |
search, | |||
found, | |||
comp | |||
) |
Definition at line 111 of file tree_macros.h.
#define TR_TREE_INORDER_SUCC | ( | node, | |
succ | |||
) |
Definition at line 99 of file tree_macros.h.
#define TR_TREE_LEFT | ( | node | ) | (NULL!=(node)?(node)->left:NULL) |
Definition at line 29 of file tree_macros.h.
#define TR_TREE_NODE_BLACK | ( | node | ) | (NULL == (node) || rbBlack == (node)->color) |
Definition at line 90 of file tree_macros.h.
#define TR_TREE_NODE_RED | ( | node | ) | (NULL == (node) || rbRed == (node)->color) |
Definition at line 92 of file tree_macros.h.
#define TR_TREE_NODE_STRICT_BLACK | ( | node | ) | (NULL != (node) && rbBlack == (node)->color) |
Definition at line 94 of file tree_macros.h.
#define TR_TREE_NODE_STRICT_RED | ( | node | ) | (NULL != (node) && rbRed == (node)->color) |
Definition at line 96 of file tree_macros.h.
#define TR_TREE_PARENT | ( | node | ) | (NULL!=(node)?(node)->parent:NULL) |
Definition at line 30 of file tree_macros.h.
#define TR_TREE_REPLACE_NODE | ( | root, | |
node1, | |||
node2 | |||
) |
Definition at line 47 of file tree_macros.h.
#define TR_TREE_RIGHT | ( | node | ) | (NULL!=(node)?(node)->right:NULL) |
Definition at line 28 of file tree_macros.h.
#define TR_TREE_ROT_RCLD_left | ( | node | ) | ((node)->right) |
Definition at line 62 of file tree_macros.h.
#define TR_TREE_ROT_RCLD_right | ( | node | ) | ((node)->left) |
Definition at line 61 of file tree_macros.h.
#define TR_TREE_ROTATE | ( | lr, | |
root, | |||
node | |||
) |
Definition at line 64 of file tree_macros.h.
#define TR_TREE_SIBLING | ( | node | ) |
Definition at line 35 of file tree_macros.h.
#define TR_TREE_UNCLE | ( | node | ) |
Definition at line 42 of file tree_macros.h.
enum TR_rbColor |
Enumerator | |
---|---|
rbBlack | |
rbRed |
Definition at line 88 of file tree_macros.h.