private string GetDiagnosticInfo(int position, CancellationToken cancellationToken)
        {
            StringBuilder builder = null;

            foreach (var d in _code.GetDiagnostics(cancellationToken))
            {
                var end = d.End > d.Start ? d.End : d.End + 1;
                if (position >= d.Start && position < end)
                {
                    if (builder == null)
                    {
                        builder = new StringBuilder();
                    }

                    if (builder.Length > 0)
                    {
                        builder.AppendLine();
                    }

                    builder.Append(d.Message);
                }
            }

            return(builder?.ToString());
        }