Safe Haskell | None |
---|---|
Language | Haskell2010 |
Language.Haskell.Exts.Util
- class FreeVars a where
- data Vars = Vars {}
- class AllVars a where
- class Brackets a where
- paren :: (Data l, Default l) => Exp l -> Exp l
- transformBracket :: (Data l, Default l) => (Exp l -> Maybe (Exp l)) -> Exp l -> Exp l
- rebracket1 :: (Data l, Default l) => Exp l -> Exp l
- appsBracket :: (Data l, Default l) => [Exp l] -> Exp l
Free variables of ASTs
class FreeVars a where Source #
Minimal complete definition
Methods
freeVars :: a -> Set (Name ()) Source #
Return the variables, erring on the side of more free variables
Instances
(Data s, Ord s) => FreeVars [IPBind s] Source # | |
(Data s, Ord s) => FreeVars [Exp s] Source # | |
(Data s, Ord s) => FreeVars [Alt s] Source # | |
(Data s, Ord s) => FreeVars (Set (Name s)) Source # | |
(Data s, Ord s) => FreeVars (IPBind s) Source # | |
(Data s, Ord s) => FreeVars (Rhs s) Source # | |
(Data s, Ord s) => FreeVars (GuardedRhs s) Source # | |
(Data s, Ord s) => FreeVars (Exp s) Source # | |
(Data s, Ord s) => FreeVars (Alt s) Source # | |
class AllVars a where Source #
Minimal complete definition
Instances
AllVars Vars Source # | |
(Data s, Ord s) => AllVars [Decl s] Source # | |
(Data s, Ord s) => AllVars [Match s] Source # | |
(Data s, Ord s) => AllVars [Pat s] Source # | |
(Data s, Ord s) => AllVars [Stmt s] Source # | |
(Data s, Ord s) => AllVars [QualStmt s] Source # | |
(Data s, Ord s) => AllVars (Maybe (Binds s)) Source # | |
(Data s, Ord s) => AllVars (Decl s) Source # | |
(Data s, Ord s) => AllVars (Binds s) Source # | |
(Data s, Ord s) => AllVars (Match s) Source # | |
(Data s, Ord s) => AllVars (Pat s) Source # | |
(Data s, Ord s) => AllVars (Stmt s) Source # | |
(Data s, Ord s) => AllVars (QualStmt s) Source # | |
Rebracketing of ASTs
class Brackets a where Source #
Minimal complete definition
paren :: (Data l, Default l) => Exp l -> Exp l Source #
Add a Paren around something if it is not atomic
rebracket1 :: (Data l, Default l) => Exp l -> Exp l Source #
Add/remove brackets as suggested needBracket at 1-level of depth