public static CompilerPipeline GetPipeline(string name)
{
if (null == name) throw new ArgumentNullException("name");
switch (name)
{
case "parse": return new Pipelines.Parse();
case "compile": return new Pipelines.Compile();
case "run": return new Pipelines.Run();
case "default": return new Pipelines.CompileToFile();
case "verify": return new Pipelines.CompileToFileAndVerify();
case "roundtrip": return new Pipelines.ParseAndPrint();
case "boo": return new Pipelines.CompileToBoo();
case "ast": return new Pipelines.ParseAndPrintAst();
case "xml": return new Pipelines.ParseAndPrintXml();
case "checkforerrors": return new Pipelines.CheckForErrors();
case "dumpreferences":
{
CompilerPipeline pipeline = new Pipelines.CompileToBoo();
pipeline.Add(new Boo.Lang.Compiler.Steps.DumpReferences());
return pipeline;
}
}
return LoadCustomPipeline(name);
}