| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Traq.CPL.Vars
Contents
Synopsis
- type VarSet = Set Ident
- class HasFreeVars t where
- freeVarsList :: t -> [Ident]
- freeVars :: HasFreeVars t => t -> VarSet
- outVars :: Stmt ext -> VarSet
- allNamesP :: HasFreeVars ext => Program ext -> VarSet
- checkVarsUnique :: HasFreeVars ext => Program ext -> Bool
- class RenameVars p where
- renameVars :: Ident -> p -> p
- renameVars' :: p -> p
- addOnePrefix :: Ident -> Ident -> Ident
Program Variables
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
| HasFreeVars Void # | |
Defined in Traq.CPL.Vars Methods freeVarsList :: Void -> [Ident] # | |
| HasFreeVars ext => HasFreeVars (AnnFailProb ext) # | |
Defined in Traq.Analysis.Annotate.Prelude Methods freeVarsList :: AnnFailProb ext -> [Ident] # | |
| HasFreeVars (BasicExpr size) # | |
Defined in Traq.CPL.Vars Methods freeVarsList :: BasicExpr size -> [Ident] # | |
| HasFreeVars (DistrExpr size) # | |
Defined in Traq.CPL.Vars Methods freeVarsList :: DistrExpr size -> [Ident] # | |
| HasFreeVars ext => HasFreeVars (Expr ext) # | The set of free (unbound) variables in an expression |
Defined in Traq.CPL.Vars Methods freeVarsList :: Expr ext -> [Ident] # | |
| HasFreeVars ext => HasFreeVars (Stmt ext) # | The set of free (unbound) variables |
Defined in Traq.CPL.Vars Methods freeVarsList :: Stmt ext -> [Ident] # | |
| HasFreeVars (Primitive prim) # | |
Defined in Traq.Primitives.Class Methods freeVarsList :: Primitive prim -> [Ident] # | |
| HasFreeVars (Core size prec) # | |
Defined in Traq.CPL.Vars Methods freeVarsList :: Core size prec -> [Ident] # | |
freeVars :: HasFreeVars t => t -> VarSet #
allNamesP :: HasFreeVars ext => Program ext -> VarSet #
Get all the variables of a program
Checks
checkVarsUnique :: HasFreeVars ext => Program ext -> Bool #
Check if a program has unique variable names
Renaming
class RenameVars p where #
Make all variable names in the program unique
Minimal complete definition
Instances
addOnePrefix :: Ident -> Ident -> Ident #