Package net.hydromatic.morel.compile
Class Inliner
- java.lang.Object
-
- net.hydromatic.morel.ast.Shuttle
-
- net.hydromatic.morel.compile.EnvShuttle
-
- net.hydromatic.morel.compile.Inliner
-
public class Inliner extends EnvShuttle
Shuttle that inlines constant values.
-
-
Field Summary
Fields Modifier and Type Field Description private Analyzer.Analysisanalysis-
Fields inherited from class net.hydromatic.morel.compile.EnvShuttle
env
-
Fields inherited from class net.hydromatic.morel.ast.Shuttle
typeSystem
-
-
Constructor Summary
Constructors Modifier Constructor Description privateInliner(TypeSystem typeSystem, Environment env, Analyzer.Analysis analysis)Private constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected Inlinerbind(List<Binding> bindingList)Creates a shuttle the same as this but with overriding bindings.protected EnvShuttlebind(Binding binding)Creates a shuttle the same as this but overriding a binding.static Inlinerof(TypeSystem typeSystem, Environment env, Analyzer.Analysis analysis)Creates an Inliner.protected Core.Expvisit(Core.Apply apply)Core.Expvisit(Core.Id id)Core.Expvisit(Core.Let let)-
Methods inherited from class net.hydromatic.morel.compile.EnvShuttle
visit, visit, visit, visit, visit
-
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, visitList, visitMap, visitSortedMap
-
-
-
-
Field Detail
-
analysis
@Nullable private final Analyzer.Analysis analysis
-
-
Constructor Detail
-
Inliner
private Inliner(TypeSystem typeSystem, Environment env, Analyzer.Analysis analysis)
Private constructor.
-
-
Method Detail
-
of
public static Inliner of(TypeSystem typeSystem, Environment env, @Nullable Analyzer.Analysis analysis)
Creates an Inliner.If
analysisis null, no variables are inlined.
-
bind
protected EnvShuttle bind(Binding binding)
Description copied from class:EnvShuttleCreates a shuttle the same as this but overriding a binding.- Specified by:
bindin classEnvShuttle
-
bind
protected Inliner bind(List<Binding> bindingList)
Description copied from class:EnvShuttleCreates a shuttle the same as this but with overriding bindings.- Specified by:
bindin classEnvShuttle
-
visit
protected Core.Exp visit(Core.Apply apply)
-
visit
public Core.Exp visit(Core.Let let)
- Overrides:
visitin classEnvShuttle
-
-