public async Task<SignatureHelpItems> GetItemsAsync(Document document, int position, SignatureHelpTriggerInfo trigger, CancellationToken cancellationToken)
 {
     foreach (var provider in _providers)
     {
         var items = await provider.GetItemsAsync(document, position, trigger, CancellationToken.None)
             .ConfigureAwait(false);
         if (items != null)
         {
             return items;
         }
     }
     return null;
 }
 public async Task<SignatureHelpItems> GetItemsAsync(Document document, int position, SignatureHelpTriggerInfo triggerInfo,
     CancellationToken cancellationToken)
 {
     var result = await _inner.GetItemsAsync(document, position, triggerInfo.Inner, cancellationToken).ConfigureAwait(false);
     return result == null ? null : new SignatureHelpItems(result);
 }