KiCS-0.9.1: src/lib/Curry/Module/SetRBT.acy
CurryProg "SetRBT"
["Prelude","RedBlackTree","Maybe"]
[CTypeSyn ("SetRBT","SetRBT") Public [(0,"a")] (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")])]
[CFunc ("SetRBT","deleteRBT") 0 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","delete"))] []]),
CFunc ("SetRBT","elemRBT") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"e")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Maybe","isJust"))) (CApply (CSymbol ("RedBlackTree","lookup")) (CVar (0,"e"))))] []]),
CFunc ("SetRBT","emptySetRBT") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("RedBlackTree","empty")) (CSymbol ("Prelude","=="))) (CSymbol ("Prelude","==")))] []]),
CFunc ("SetRBT","insertMultiRBT") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"e")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("RedBlackTree","setInsertEquivalence")) (CSymbol ("Prelude","==")))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("RedBlackTree","update")) (CVar (0,"e")))) (CApply (CSymbol ("RedBlackTree","setInsertEquivalence")) (CLambda [CPVar (1,"_"),CPVar (2,"_")] (CSymbol ("Prelude","False"))))))] []]),
CFunc ("SetRBT","insertRBT") 0 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","update"))] []]),
CFunc ("SetRBT","intersectRBT") 2 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"s1"),CPVar (1,"s2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("SetRBT","insertRBT"))) (CApply (CSymbol ("RedBlackTree","newTreeLike")) (CVar (0,"s1")))) (CApply (CApply (CSymbol ("Prelude","filter")) (CLambda [CPVar (2,"e")] (CApply (CApply (CSymbol ("SetRBT","elemRBT")) (CVar (2,"e"))) (CVar (1,"s2"))))) (CApply (CSymbol ("SetRBT","setRBT2list")) (CVar (0,"s1")))))] []]),
CFunc ("SetRBT","setRBT2list") 0 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","tree2list"))] []]),
CFunc ("SetRBT","sortRBT") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","sort"))] []]),
CFunc ("SetRBT","unionRBT") 2 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"s1"),CPVar (1,"s2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("SetRBT","insertRBT"))) (CVar (1,"s2"))) (CApply (CSymbol ("SetRBT","setRBT2list")) (CVar (0,"s1"))))] []])]
[]