Exemplo n.º 1
0
    public static (AdhocWorkspace workspace, Project project) CreateWorkspaceAndProject(string language)
    {
        var host      = Roslynator.CreateHost(typeof(TestHelpers).Assembly);
        var workspace = new AdhocWorkspace(host, WorkspaceKind.Host);
        var options   = language == LanguageNames.CSharp ?
                        (CompilationOptions) new CSharpCompilationOptions(OutputKind.DynamicallyLinkedLibrary) :
                        (CompilationOptions) new VisualBasicCompilationOptions(OutputKind.DynamicallyLinkedLibrary);

        var project = workspace.AddProject(ProjectInfo.Create(
                                               ProjectId.CreateNewId(),
                                               VersionStamp.Create(),
                                               "code",
                                               "code.dll",
                                               language,
                                               compilationOptions: options,
                                               metadataReferences: new[] { MetadataReference.CreateFromFile(typeof(string).Assembly.ManifestModule.FullyQualifiedName) }
                                               //metadataReferences: ReferencePaths.Paths
                                               //    .Select(path => MetadataReference.CreateFromFile(path))
                                               ));

        return(workspace, project);
    }
Exemplo n.º 2
0
 // Used for MEF composition.
 public static HostServices CreateHost(params Assembly[] additionalGenerators)
 => Roslynator.CreateHost(additionalGenerators == null ?
                          new[] { Assembly.GetExecutingAssembly() } :
                          additionalGenerators.Concat(new[] { Assembly.GetExecutingAssembly() }).ToArray());