SAvl_tree.h 1.0 KB

123456789101112131415161718
  1. #define CAVL_PARAM_NAME SAvl__Tree
  2. #define CAVL_PARAM_FEATURE_COUNTS SAVL_PARAM_FEATURE_COUNTS
  3. #define CAVL_PARAM_FEATURE_KEYS_ARE_INDICES 0
  4. #define CAVL_PARAM_FEATURE_NOKEYS SAVL_PARAM_FEATURE_NOKEYS
  5. #define CAVL_PARAM_TYPE_ENTRY SAvlEntry
  6. #define CAVL_PARAM_TYPE_LINK SAvl__TreeLink
  7. #define CAVL_PARAM_TYPE_KEY SAvlKey
  8. #define CAVL_PARAM_TYPE_ARG SAvlArg
  9. #define CAVL_PARAM_TYPE_COUNT SAvlCount
  10. #define CAVL_PARAM_VALUE_COUNT_MAX SAVL_PARAM_VALUE_COUNT_MAX
  11. #define CAVL_PARAM_VALUE_NULL ((SAvl__TreeLink)NULL)
  12. #define CAVL_PARAM_FUN_DEREF(arg, link) (link)
  13. #define CAVL_PARAM_FUN_COMPARE_ENTRIES(arg, entry1, entry2) SAVL_PARAM_FUN_COMPARE_ENTRIES((arg), (entry1).link, (entry2).link)
  14. #define CAVL_PARAM_FUN_COMPARE_KEY_ENTRY(arg, key1, entry2) SAVL_PARAM_FUN_COMPARE_KEY_ENTRY((arg), (key1), (entry2).link)
  15. #define CAVL_PARAM_MEMBER_CHILD SAVL_PARAM_MEMBER_NODE . child
  16. #define CAVL_PARAM_MEMBER_BALANCE SAVL_PARAM_MEMBER_NODE . balance
  17. #define CAVL_PARAM_MEMBER_PARENT SAVL_PARAM_MEMBER_NODE . parent
  18. #define CAVL_PARAM_MEMBER_COUNT SAVL_PARAM_MEMBER_NODE . count