public static void SetWithSolutionMarkAsync()

in EnvDTE.Host/Callback/Util/EnvDteCallbackProviderExtensions.cs [96:107]


        public static void SetWithSolutionMarkAsync<TReq, TRes>(
            this IRdEndpoint<TReq, TRes> endpoint,
            ISolution solution,
            Func<Lifetime, TReq, ISolutionMark, Task<TRes>> func) =>
            endpoint.SetAsync(async (lifetime, req) =>
            {
                var solutionMark = solution.GetSolutionMark();
                if (solutionMark is null)
                    throw new InvalidOperationException("Unable to get the solution mark.");

                return await func(lifetime, req, solutionMark);
            });