예제 #1
0
        /// <summary>
        /// Extends the compiler setup.
        /// </summary>
        public override void ExtendCompilerSetup()
        {
            var bootStage = CompilerOptions.BootStageFactory != null?CompilerOptions.BootStageFactory() : null;

            CompilePipeline.Add(new ICompilerStage[] {
                bootStage,
                new PlugStage(),
                new TypeInitializerSchedulerStage(),
                new MethodLookupTableStage(),
                new MethodExceptionLookupTableStage(),
                new MetadataStage(),
                new LinkerFinalizationStage(),
                CompilerOptions.MapFile != null ? new MapFileGenerationStage() : null
            });
        }