Snippets\SnippetExpansionClient.cs (32)
113public IVsExpansionSession? ExpansionSession => _state._expansionSession;
116public bool IsFullMethodCallSnippet => _state.IsFullMethodCallSnippet;
408var tabbedInsideSnippetField = VSConstants.S_OK == ExpansionSession.GoToNextExpansionField(fCommitIfLast: _state.IsFullMethodCallSnippet ? 1 : 0);
517Debug.Assert(_state.IsFullMethodCallSnippet);
521if (expansion.InsertExpansion(textSpan, textSpan, this, _languageHelper.LanguageServiceGuid, out _state._expansionSession) == VSConstants.S_OK)
525Debug.Assert(!_state.IsFullMethodCallSnippet);
559if (expansion.InsertSpecificExpansion(doc, textSpan, this, _languageHelper.LanguageServiceGuid, pszRelativePath: null, out _state._expansionSession) == VSConstants.S_OK)
561Debug.Assert(_state._expansionSession != null);
562_state._methodNameForInsertFullMethodCall = methodSymbols.First().Name;
563Debug.Assert(_state._method == null);
716if (!_state.IsFullMethodCallSnippet)
723if (!e.NewModel.UserSelected && _state._method is not null)
782if (SymbolEquivalenceComparer.Instance.Equals(_state._method, method))
787if (_state._methodNameForInsertFullMethodCall != method.Name)
800if (_state._method is null && method.Parameters.Length == 0)
802_state._method = method;
837var firstField = _state._method?.Parameters.FirstOrDefault()?.Name ?? PlaceholderSnippetField;
847var lastField = _state._method?.Parameters.LastOrDefault()?.Name ?? PlaceholderSnippetField;
863var newArguments = _state._arguments;
865if (_state._method is null || !_state._method.Parameters.Any())
883else if (_state._method is not null)
885foreach (var previousParameter in _state._method.Parameters)
924if (expansion.InsertSpecificExpansion(doc, adjustedTextSpan, this, _languageHelper.LanguageServiceGuid, pszRelativePath: null, out _state._expansionSession) == VSConstants.S_OK)
926Debug.Assert(_state._expansionSession != null);
927_state._methodNameForInsertFullMethodCall = method.Name;
928_state._method = method;
929_state._arguments = newArguments;
954_state.Clear();
984_state._expansionSession = pSession;
1014hr = expansion.InsertNamedExpansion(pszTitle, pszPath, textSpan, this, _languageHelper.LanguageServiceGuid, fShowDisambiguationUI: 0, pSession: out _state._expansionSession);
1022_state._expansionSession = null;