Beispiel #1
0
        public static unsafe void SetOption(this CSharpProjectShim csharpProject, CompilerOptions optionID, object value)
        {
            Assert.Equal(8 + 2 * IntPtr.Size, sizeof(HACK_VariantStructure));
            Assert.Equal(8, (int)Marshal.OffsetOf <HACK_VariantStructure>("_booleanValue"));

            HACK_VariantStructure variant = default;

            Marshal.GetNativeVariantForObject(value, (IntPtr)(&variant));
            csharpProject.SetOption(optionID, variant);
        }
Beispiel #2
0
        public void BindToProject(ICSharpProjectRoot projectRoot, IVsHierarchy hierarchy)
        {
            var projectName = Path.GetFileName(projectRoot.GetFullProjectName()); // GetFullProjectName returns the path to the project file w/o the extension?

            var project = new CSharpProjectShim(
                projectRoot,
                projectName,
                hierarchy,
                this.SystemServiceProvider,
                this.Package.ComponentModel.GetService <IThreadingContext>());

            projectRoot.SetProjectSite(project);
        }
        public void BindToProject(ICSharpProjectRoot projectRoot, IVsHierarchy hierarchy)
        {
            var projectName = Path.GetFileName(projectRoot.GetFullProjectName()); // GetFullProjectName returns the path to the project file w/o the extension?

            var project = new CSharpProjectShim(
                projectRoot,
                projectName,
                hierarchy,
                this.SystemServiceProvider,
                this.Package.ComponentModel.GetService <IThreadingContext>(),
                this.HostDiagnosticUpdateSource,
                this.Workspace.Services.GetLanguageServices(LanguageNames.CSharp).GetService <ICommandLineParserService>());

            projectRoot.SetProjectSite(project);
        }
Beispiel #4
0
        public void BindToProject(ICSharpProjectRoot projectRoot, IVsHierarchy hierarchy)
        {
            var projectName = Path.GetFileName(projectRoot.GetFullProjectName()); // GetFullProjectName returns the path to the project file w/o the extension?

            var projectTracker = Workspace.GetProjectTrackerAndInitializeIfNecessary(SystemServiceProvider);

            var project = new CSharpProjectShim(
                projectRoot,
                projectTracker,
                id => new ProjectExternalErrorReporter(id, "CS", this.SystemServiceProvider),
                projectName,
                hierarchy,
                this.SystemServiceProvider,
                this.Workspace,
                this.HostDiagnosticUpdateSource,
                this.Workspace.Services.GetLanguageServices(LanguageNames.CSharp).GetService <ICommandLineParserService>());

            projectRoot.SetProjectSite(project);
        }