protected VisualBasic.VisualBasicCompilation CreateVisualBasicCompilation( string code, VisualBasic.VisualBasicParseOptions parseOptions = null, VisualBasic.VisualBasicCompilationOptions compilationOptions = null, string assemblyName = null, IEnumerable <MetadataReference> referencedAssemblies = null) { return(CreateVisualBasicCompilation(assemblyName, code, parseOptions, compilationOptions, referencedAssemblies, referencedCompilations: null)); }
protected VisualBasic.VisualBasicCompilation CreateVisualBasicCompilation( string assemblyName, string code, VisualBasic.VisualBasicParseOptions parseOptions = null, VisualBasic.VisualBasicCompilationOptions compilationOptions = null, IEnumerable <MetadataReference> referencedAssemblies = null, IEnumerable <Compilation> referencedCompilations = null, Encoding encoding = null, string sourceFileName = null) => CreateVisualBasicCompilation(assemblyName, new[] { code }, parseOptions, compilationOptions, referencedAssemblies, referencedCompilations, encoding, new[] { sourceFileName });
protected VisualBasic.VisualBasicCompilation CreateVisualBasicCompilation( string assemblyName, string[] files, VisualBasic.VisualBasicParseOptions parseOptions = null, VisualBasic.VisualBasicCompilationOptions compilationOptions = null, IEnumerable <MetadataReference> referencedAssemblies = null, IEnumerable <Compilation> referencedCompilations = null, Encoding encoding = null, string[] sourceFileNames = null) { Debug.Assert(sourceFileNames == null || sourceFileNames.Length == files.Length); if (assemblyName == null) { assemblyName = GetUniqueName(); } if (parseOptions == null) { parseOptions = VisualBasic.VisualBasicParseOptions.Default; } if (compilationOptions == null) { compilationOptions = new VisualBasic.VisualBasicCompilationOptions(OutputKind.DynamicallyLinkedLibrary); } compilationOptions = compilationOptions.WithParseOptions(parseOptions); var references = new List <MetadataReference>(); if (referencedAssemblies == null) { references.Add(MscorlibRef); references.Add(SystemRef); references.Add(SystemCoreRef); references.Add(MsvbRef); references.Add(SystemXmlRef); references.Add(SystemXmlLinqRef); } else { references.AddRange(referencedAssemblies); } AddReferencedCompilations(referencedCompilations, references); var trees = new SyntaxTree[files.Length]; for (int i = 0; i < files.Length; i++) { trees[i] = VisualBasic.VisualBasicSyntaxTree.ParseText(files[i], options: parseOptions, encoding: encoding, path: sourceFileNames?[i]); } return(VisualBasic.VisualBasicCompilation.Create(assemblyName, trees, references, compilationOptions)); }
protected VisualBasic.VisualBasicCompilation CreateVisualBasicCompilation( string assemblyName, string code, VisualBasic.VisualBasicParseOptions parseOptions = null, VisualBasic.VisualBasicCompilationOptions compilationOptions = null, IEnumerable <MetadataReference> referencedAssemblies = null, IEnumerable <Compilation> referencedCompilations = null, Encoding encoding = null, string sourceFileName = null) { if (assemblyName == null) { assemblyName = GetUniqueName(); } if (parseOptions == null) { parseOptions = VisualBasic.VisualBasicParseOptions.Default; } if (compilationOptions == null) { compilationOptions = new VisualBasic.VisualBasicCompilationOptions(OutputKind.DynamicallyLinkedLibrary); } compilationOptions = compilationOptions.WithParseOptions(parseOptions); var references = new List <MetadataReference>(); if (referencedAssemblies == null) { references.Add(MscorlibRef); references.Add(SystemRef); references.Add(SystemCoreRef); references.Add(MsvbRef); references.Add(SystemXmlRef); references.Add(SystemXmlLinqRef); } else { references.AddRange(referencedAssemblies); } AddReferencedCompilations(referencedCompilations, references); var tree = VisualBasic.VisualBasicSyntaxTree.ParseText(code, options: parseOptions, encoding: encoding, path: sourceFileName); return(VisualBasic.VisualBasicCompilation.Create(assemblyName, new[] { tree }, references, compilationOptions)); }