protected Compilation GetCompilation(string code, MetadataReference[] references = null) { IEnumerable <SyntaxTree> syntaxTrees = SimpleParseUtil.Parse(code); references = references ?? SimpleCompileUtil.GetDefaultMetadataReferences(); Compilation comp = SimpleCompileUtil.GetSimpleCSharpCompilation(syntaxTrees, references); return(comp); }
protected Compilation GetCompilation(FileInfo codePath, MetadataReference[] references = null) { SyntaxTree syntaxTrees = SimpleParseUtil.Parse(codePath); references = references ?? SimpleCompileUtil.GetDefaultMetadataReferences(); Compilation comp = SimpleCompileUtil.GetSimpleCSharpCompilation(new [] { syntaxTrees }, references); return(comp); }
protected Compilation GetSolutionCompilation(FileInfo solution) { MetadataReference[] references = SimpleCompileUtil.GetMetadataReferencesFromSolution(solution); FileInfo[] sources = SimpleCompileUtil.GetSourcesFromSolution(solution); List <SyntaxTree> trees = new List <SyntaxTree>(); foreach (FileInfo source in sources) { trees.Add(SimpleParseUtil.Parse(source)); } CSharpCompilation comp = SimpleCompileUtil.GetSimpleCSharpCompilation(trees, references); return(comp); }