public static JitDisasmProjectContext Create()

in src/dotnet/ReSharperPlugin.DotNetDisassembler/JitDisasmAdapters/JitDisasmProjectContextFactory.cs [12:32]


    public static JitDisasmProjectContext Create(IProject project)
    {
        var solution = project.GetSolution();
        return solution.Locks.ExecuteWithReadLock(() =>
        {
            var sdk = project.ProjectProperties.DotNetCorePlatform?.Sdk;
            var tfmId = project.TargetFrameworkIds.TakeMax(x => x.Version.Major, min: 0);
            var outputDirectory = tfmId != null ? project.GetOutputDirectory(tfmId) : null;
            var assemblyName = tfmId != null ? project.GetOutputAssemblyName(tfmId) : null;
            var dotNetCliExePath = GetDotNetCliExePath(solution);

            return new JitDisasmProjectContext(
                Sdk: sdk,
                Tfm: tfmId != null ? JitDisasmTargetFrameworkFactory.Create(tfmId) : null,
                OutputPath: outputDirectory?.FullPath,
                ProjectFilePath: project.ProjectFileLocation?.FullPath,
                ProjectDirectory: project.Location?.FullPath,
                AssemblyName: assemblyName,
                DotNetCliExePath: dotNetCliExePath);
        });
    }