golang/go

x/tools/gopls: consider using &S form instead of *S for pointer type struct field autocompletion

Aperta

#39.227 aperta il 23 mag 2020

 (5 commenti) (0 reazioni) (0 assegnatari)Go (19.008 fork)batch import
NeedsDecisionToolsgoplshelp wanted

Metriche repository

Star
 (133.883 stelle)
Metriche merge PR
 (Nessuna PR mergiata in 30 g)

Descrizione

Currently autocompletion for a struct field uses the field's type as the placeholder text. For example,

type F struct {...}
type S struct {
   Field *F
}

The autocompletion for the Field will return "newText":"Field: ${1:*F},". gopls uses the type info for placeholder text, so I don't think the choice is incorrect nor invalid.

But if the suggestion used &F instead, it would be more convenient when users want to use composite literals. Especially, if the type name is long to type, reusing what's already in the placeholder will save many keystrokes.

(Based on https://github.com/golang/vscode-go/issues/85)

Guida contributor