| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Traq.ProtoLang.Vars
Synopsis
- type VarSet = Set Ident
- class HasFreeVars t where
- freeVarsList :: t -> [Ident]
- freeVars :: HasFreeVars t => t -> VarSet
- checkVarsUnique :: HasFreeVars ext => Program ext -> Bool
- allNamesP :: HasFreeVars ext => Program ext -> VarSet
- class RenameVars p where
- renameVars :: Ident -> p -> p
- addOnePrefix :: Ident -> Ident -> Ident
- outVars :: Stmt ext -> VarSet
Documentation
class HasFreeVars t where #
Any language termexpr... that has a (possibly empty) set of free variables.
Minimal complete definition
Nothing
Methods
freeVarsList :: t -> [Ident] #
default freeVarsList :: (Generic t, GHasFreeVars (Rep t)) => t -> [Ident] #
Instances
freeVars :: HasFreeVars t => t -> VarSet #
checkVarsUnique :: HasFreeVars ext => Program ext -> Bool #
Check if a program has unique variable names
allNamesP :: HasFreeVars ext => Program ext -> VarSet #
Get all the variables of a program
class RenameVars p where #
Make all variable names in the program unique
Methods
renameVars :: Ident -> p -> p #
Instances
addOnePrefix :: Ident -> Ident -> Ident #