|
|
|
|
|
Description |
A module concerned with finding the free variables of an expression.
|
|
Synopsis |
|
|
|
|
Free variables of expressions and binding groups
|
|
|
Find all locally-defined free Ids or type variables in an expression
|
|
|
Find all locally-defined free Ids or type variables in several expressions
|
|
|
Find all locally defined free Ids in a binding group
|
|
Selective free variables of expressions
|
|
|
Predicate on possible free variables: returns True iff the variable is interesting
|
|
|
|
|
|
Finds free variables in several expressions selected by a predicate
|
|
|
Finds the free external names of an expression, notably
including the names of type constructors (which of course do not show
up in exprFreeVars).
|
|
|
Finds the free external names of several expressions: see exprFreeNames for details
|
|
Free variables of Rules, Vars and Ids
|
|
|
|
|
|
|
|
|
|
|
Those variables free in the right hand side of a rule
|
|
|
Those variables free in the right hand side of several rules
|
|
|
Similar to exprFreeNames. However, this is used when deciding whether
a rule is an orphan. In particular, suppose that T is defined in this
module; we want to avoid declaring that a rule like:
fromIntegral T = fromIntegral_T
is an orphan. Of course it isn't, and declaring it an orphan would
make the whole module an orphan module, which is bad.
|
|
|
This finds all locally-defined free Ids on the left hand side of a rule
|
|
Core syntax tree annotation with free variables
|
|
|
Every node in an expression annotated with its
(non-global) free variables, both Ids and TyVars
|
|
|
Every node in a binding group annotated with its
(non-global) free variables, both Ids and TyVars
|
|
|
Annotate a CoreExpr with its (non-global) free type and value variables at every tree node
|
|
|
Inverse function to freeVars
|
|
Produced by Haddock version 2.6.1 |