]> gitweb @ CieloNegro.org - bindings-CarbonCore.git/blob - Bindings/CoreServices/CarbonCore/AVLTree.hsc
7692547ac77faaf3dbbc3c81f5904fb2c614804b
[bindings-CarbonCore.git] / Bindings / CoreServices / CarbonCore / AVLTree.hsc
1 #include <bindings.dsl.h>
2 #include <CoreServices/CoreServices.h>
3
4 module Bindings.CoreServices.CarbonCore.AVLTree where
5 #strict_import
6 import Bindings.CoreServices.CarbonCore.MacTypes
7
8 #synonym_t AVLVisitStage, <UInt16>
9 #num kAVLPreOrder
10 #num kAVLInOrder
11 #num kAVLPostOrder
12
13 #synonym_t AVLOrder, <UInt16>
14 #num kLeftToRight
15 #num kRightToLeft
16
17 #synonym_t AVLNodeType, <UInt16>
18 #num kAVLIsTree
19 #num kAVLIsLeftBranch
20 #num kAVLIsRightBranch
21 #num kAVLIsLeaf
22 #num kAVLNullNode
23
24 #num errItemAlreadyInTree
25 #num errNotValidTree
26 #num errItemNotFoundInTree
27 #num errCanNotInsertWhileWalkProcInProgress
28 #num errTreeIsLocked
29
30 #starttype struct AVLTreeStruct
31 #  field signature, <OSType>
32 #  array_field privateStuff, CULong
33 #stoptype
34 #synonym_t AVLTreePtr, Ptr <AVLTreeStruct>
35
36 #callback AVLCompareItemsProcPtr, <AVLTreePtr> -> Ptr () -> Ptr () -> <AVLNodeType> -> IO <SInt32>
37 #callback AVLItemSizeProcPtr    , <AVLTreePtr> -> Ptr () -> <ByteCount>
38 #callback AVLDisposeItemProcPtr , <AVLTreePtr> -> Ptr () -> IO ()
39 #callback AVLWalkProcPtr        , <AVLTreePtr> -> Ptr () -> <AVLVisitStage> -> <AVLNodeType> -> <UInt32> -> <SInt32> -> Ptr () -> IO <OSErr>
40
41 #synonym_t AVLCompareItemsUPP, <AVLCompareItemsProcPtr>
42 #synonym_t AVLItemSizeUPP    , <AVLItemSizeProcPtr>
43 #synonym_t AVLDisposeItemUPP , <AVLDisposeItemProcPtr>
44 #synonym_t AVLWalkUPP        , <AVLWalkProcPtr>
45
46 #if !__LP64__
47 #  ccall AVLInit      , <UInt32> -> <AVLCompareItemsUPP> -> <AVLItemSizeUPP> -> <AVLDisposeItemUPP> -> Ptr () -> Ptr <AVLTreePtr> -> IO <OSErr>
48 #  ccall AVLDispose   , Ptr <AVLTreePtr> -> <AVLOrder> -> IO <OSErr>
49 #  ccall AVLWalk      , <AVLTreePtr> -> <AVLWalkUPP> -> <AVLOrder> -> Ptr () -> IO <OSErr>
50 #  ccall AVLCount     , <AVLTreePtr> -> Ptr <UInt32> -> IO <OSErr>
51 #  ccall AVLGetIndItem, <AVLTreePtr> -> <UInt32> -> Ptr () -> Ptr <ByteCount> -> IO <OSErr>
52 #  ccall AVLInsert    , <AVLTreePtr> -> Ptr () -> IO <OSErr>
53 #  ccall AVLRemove    , <AVLTreePtr> -> Ptr () -> Ptr () -> Ptr <ByteCount> -> IO <OSErr>
54 #  ccall AVLFind      , <AVLTreePtr> -> Ptr () -> Ptr () -> Ptr <ByteCount> -> IO <OSErr>
55 #  ccall AVLGetRefcon , <AVLTreePtr> -> Ptr (Ptr ()) -> IO <OSErr>
56 #endif