package st.gravel.support.jvm.runtime; import java.io.File; import st.gravel.support.compiler.ast.ClassProducer; import st.gravel.support.compiler.ast.DiskClassReader; import st.gravel.support.compiler.ast.SystemDefinitionNode; import st.gravel.support.compiler.ast.SystemMapping; import st.gravel.support.compiler.ast.SystemNode; public class ImageBootstrapper { public static final SystemMapping systemMapping = SystemMapping.factory .systemNode_compilerTools_(SystemNode.factory.empty(), new JavaSystemMappingCompilerTools()); public static void bootstrap() { File fn = defaultSourceFolder(); bootstrap(fn); } public static File defaultSourceFolder() { return new File(System.getProperty("user.dir")+ "/src/main/st"); } public static void bootstrap(File fn) { systemMapping.updateTo_(loadSystemDefinitionNode(fn)); } public static SystemDefinitionNode loadSystemDefinitionNode(File fn) { DiskClassReader diskClassReader = DiskClassReader.factory .root_producer_(fn, ClassProducer.factory.basicNew()); return diskClassReader.read(); } }