Package net.hydromatic.morel.compile
Class Environments
- java.lang.Object
-
- net.hydromatic.morel.compile.Environments
-
public abstract class Environments extends Object
Helpers forEnvironment.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classEnvironments.EmptyEnvironmentEmpty environment.(package private) static classEnvironments.MapEnvironmentEnvironment that keeps bindings in a map.(package private) static classEnvironments.SubEnvironmentEnvironment that inherits from a parent environment and adds one binding.
-
Field Summary
Fields Modifier and Type Field Description private static EnvironmentBASIC_ENVIRONMENTAn environment with only "true" and "false".
-
Constructor Summary
Constructors Modifier Constructor Description privateEnvironments()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description (package private) static Environmentbind(Environment env, Iterable<Binding> bindings)Creates an environment that is a given environment plus bindings.static Environmentempty()Creates an empty environment.private static Environmentenv(Environment environment, TypeSystem typeSystem, Map<String,ForeignValue> valueMap)Creates a compilation environment, including built-ins and foreign values.static Environmentenv(TypeSystem typeSystem, Map<String,ForeignValue> valueMap)Creates an environment containing built-ins and the given foreign values.private static voidforeignBindings(TypeSystem typeSystem, Map<String,ForeignValue> map, List<Binding> bindings)
-
-
-
Field Detail
-
BASIC_ENVIRONMENT
private static final Environment BASIC_ENVIRONMENT
An environment with only "true" and "false".
-
-
Method Detail
-
empty
public static Environment empty()
Creates an empty environment.
-
env
public static Environment env(TypeSystem typeSystem, Map<String,ForeignValue> valueMap)
Creates an environment containing built-ins and the given foreign values.
-
env
private static Environment env(Environment environment, TypeSystem typeSystem, Map<String,ForeignValue> valueMap)
Creates a compilation environment, including built-ins and foreign values.
-
foreignBindings
private static void foreignBindings(TypeSystem typeSystem, Map<String,ForeignValue> map, List<Binding> bindings)
-
bind
static Environment bind(Environment env, Iterable<Binding> bindings)
Creates an environment that is a given environment plus bindings.
-
-