package org.simantics.scl.compiler.environment; import org.simantics.scl.compiler.compilation.CompilationContext; import org.simantics.scl.compiler.module.ConcreteModule; import org.simantics.scl.compiler.module.ImportDeclaration; import org.simantics.scl.compiler.module.repository.ImportFailureException; import org.simantics.scl.compiler.module.repository.ModuleRepository; public interface EnvironmentFactory { Environment createEnvironment(CompilationContext context, ImportDeclaration[] array) throws ImportFailureException; Environment createEnvironmentRobustly(CompilationContext context, ImportDeclaration[] array); void addBuiltinDependencies(ConcreteModule module); ModuleRepository getModuleRepository(); }