CurryProg "PropertyFile" ["Prelude","Directory","IOExts","Char"] [] [CFunc ("PropertyFile","changePropertyInFile") 3 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CRules CFlex [CRule [CPVar (0,"file"),CPVar (1,"pname"),CPVar (2,"pval")] [(CSymbol ("Prelude","success"),CDoExpr [CSExpr (CApply (CApply (CSymbol ("IOExts","updateFile")) (CLambda [CPVar (3,"rcs")] (CApply (CApply (CSymbol ("Prelude","$")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","unlines"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("PropertyFile","changeProp")))) (CSymbol ("Prelude","lines"))))) (CVar (3,"rcs"))))) (CVar (0,"file")))])] [CLocalFunc (CFunc ("PropertyFile","changeProp") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (3,"l")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"s1"),CPVar (5,"s2")]) (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (6,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (6,"x0"))) (CLit (CCharc '='))))) (CVar (3,"l"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Prelude","null")) (CVar (3,"l")))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Prelude","not")) (CApply (CSymbol ("Char","isAlpha")) (CApply (CSymbol ("Prelude","head")) (CVar (3,"l")))))) (CApply (CSymbol ("Prelude","null")) (CVar (5,"s2")))))) (CVar (3,"l"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (4,"s1"))) (CVar (1,"pname")))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"s1"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '='))) (CSymbol ("Prelude","[]")))) (CVar (2,"pval"))))) (CVar (3,"l")))))] []]))]]), CFunc ("PropertyFile","readPropertyFile") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]])) (CRules CFlex [CRule [CPVar (0,"file")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"pfexists")) (CApply (CSymbol ("Directory","doesFileExist")) (CVar (0,"file"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (1,"pfexists"))) (CDoExpr [CSPat (CPVar (2,"rcs")) (CApply (CSymbol ("Prelude","readFile")) (CVar (0,"file"))),CSExpr (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","return"))) (CApply (CApply (CSymbol ("Prelude","$")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("PropertyFile","splitEqs"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","filter")) (CLambda [CPVar (3,"l")] (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("Prelude","not")) (CApply (CSymbol ("Prelude","null")) (CVar (3,"l"))))) (CApply (CSymbol ("Char","isAlpha")) (CApply (CSymbol ("Prelude","head")) (CVar (3,"l")))))))) (CSymbol ("Prelude","lines"))))) (CVar (2,"rcs"))))])) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","[]"))))])] [CLocalFunc (CFunc ("PropertyFile","splitEqs") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"eq"),CPVar (2,"eqs")]] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"x0"))) (CLit (CCharc '='))))) (CVar (1,"eq"))) [CBranch (CPComb ("Prelude","(,)") [CPVar (4,"prop"),CPComb ("Prelude",":") [CPVar (5,"_"),CPVar (6,"val")]]) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (4,"prop"))) (CVar (6,"val")))) (CApply (CSymbol ("PropertyFile","splitEqs")) (CVar (2,"eqs")))),CBranch (CPVar (7,"_")) (CApply (CSymbol ("PropertyFile","splitEqs")) (CVar (2,"eqs")))])] []]))]]), CFunc ("PropertyFile","updatePropertyFile") 3 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CRules CFlex [CRule [CPVar (0,"file"),CPVar (1,"pname"),CPVar (2,"pval")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (3,"props")) (CApply (CSymbol ("PropertyFile","readPropertyFile")) (CVar (0,"file"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","lookup")) (CVar (1,"pname"))) (CVar (3,"props")))) (CSymbol ("Prelude","Nothing")))) (CApply (CApply (CSymbol ("Prelude","appendFile")) (CVar (0,"file"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"pname"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '='))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"pval"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CApply (CSymbol ("PropertyFile","changePropertyInFile")) (CVar (0,"file"))) (CVar (1,"pname"))) (CVar (2,"pval"))))])] []])] []