Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions internal/ls/completions.go
Original file line number Diff line number Diff line change
Expand Up @@ -1444,7 +1444,7 @@ func (l *LanguageService) getCompletionData(
completionKind = CompletionKindMemberLike
// Declaring new property/method/accessor
isNewIdentifierLocation = true
if contextToken.Kind == ast.KindAsteriskToken {
if contextToken != nil && contextToken.Kind == ast.KindAsteriskToken {
keywordFilters = KeywordCompletionFiltersNone
} else if ast.IsClassLike(decl) {
keywordFilters = KeywordCompletionFiltersClassElementKeywords
Expand All @@ -1458,17 +1458,17 @@ func (l *LanguageService) getCompletionData(
}

var classElement *ast.Node
if contextToken.Kind == ast.KindSemicolonToken {
if contextToken != nil && contextToken.Kind == ast.KindSemicolonToken {
classElement = contextToken.Parent.Parent
} else {
} else if contextToken != nil {
classElement = contextToken.Parent
}
var classElementModifierFlags ast.ModifierFlags
if ast.IsClassElement(classElement) {
classElementModifierFlags = classElement.ModifierFlags()
}
// If this is context token is not something we are editing now, consider if this would lead to be modifier.
if contextToken.Kind == ast.KindIdentifier && !isCurrentlyEditingNode(contextToken, file, position) {
if contextToken != nil && contextToken.Kind == ast.KindIdentifier && !isCurrentlyEditingNode(contextToken, file, position) {
switch contextToken.Text() {
case "private":
classElementModifierFlags |= ast.ModifierFlagsPrivate
Expand Down Expand Up @@ -2750,7 +2750,7 @@ func getSourceFromOrigin(origin *symbolOriginInfo) string {
func getRelevantTokens(position int, file *ast.SourceFile) (contextToken *ast.Node, previousToken *ast.Node) {
previousToken = astnav.FindPrecedingToken(file, position)
if previousToken != nil && position <= previousToken.End() && (ast.IsMemberName(previousToken) || ast.IsKeywordKind(previousToken.Kind)) {
contextToken := astnav.FindPrecedingToken(file, previousToken.Pos())
contextToken = astnav.FindPrecedingToken(file, previousToken.Pos())
return contextToken, previousToken
}
return previousToken, previousToken
Expand Down