Package net.hydromatic.morel.compile
Class EnvShuttle
- java.lang.Object
-
- net.hydromatic.morel.ast.Shuttle
-
- net.hydromatic.morel.compile.EnvShuttle
-
- Direct Known Subclasses:
Inliner,Relationalizer
abstract class EnvShuttle extends Shuttle
Shuttle that keeps an environment of what variables are in scope.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) Environmentenv-
Fields inherited from class net.hydromatic.morel.ast.Shuttle
typeSystem
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedEnvShuttle(TypeSystem typeSystem, Environment env)Creates an EnvShuttle.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract EnvShuttlebind(List<Binding> bindingList)Creates a shuttle the same as this but with overriding bindings.protected abstract EnvShuttlebind(Binding binding)Creates a shuttle the same as this but overriding a binding.protected Core.Fnvisit(Core.Fn fn)Core.Expvisit(Core.From from)Core.Expvisit(Core.Let let)Core.Expvisit(Core.Local local)protected Core.Matchvisit(Core.Match match)Core.RecValDeclvisit(Core.RecValDecl recValDecl)-
Methods inherited from class net.hydromatic.morel.ast.Shuttle
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitList, visitMap, visitSortedMap
-
-
-
-
Field Detail
-
env
final Environment env
-
-
Constructor Detail
-
EnvShuttle
protected EnvShuttle(TypeSystem typeSystem, Environment env)
Creates an EnvShuttle.
-
-
Method Detail
-
bind
protected abstract EnvShuttle bind(Binding binding)
Creates a shuttle the same as this but overriding a binding.
-
bind
protected abstract EnvShuttle bind(List<Binding> bindingList)
Creates a shuttle the same as this but with overriding bindings.
-
visit
protected Core.Match visit(Core.Match match)
-
visit
public Core.Exp visit(Core.Local local)
-
visit
public Core.RecValDecl visit(Core.RecValDecl recValDecl)
-
-