mirror of
https://github.com/golang/go
synced 2024-11-06 19:46:20 -07:00
87e6e099c6
In cases like "fmt.Pr<>int()" we previously would replace "Print" with the new completion, yielding for example "fmt.Println()". Now we no longer overwrite, yielding "fmt.Println()int()". There are some cases where overwriting the suffix is what the user wants, but it is hard to tell, so for now stick with the more expected behavior of not overwriting. Fixes golang/go#34011. Change-Id: I8c3ccd8948245c27b52408ad508d8e01dc163ef4 Reviewed-on: https://go-review.googlesource.com/c/tools/+/196119 Run-TryBot: Rebecca Stambler <rstambler@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rebecca Stambler <rstambler@golang.org>
40 lines
1.4 KiB
Go
40 lines
1.4 KiB
Go
package snippets
|
|
|
|
func foo(i int, b bool) {} //@item(snipFoo, "foo", "func(i int, b bool)", "func")
|
|
func bar(fn func()) func() {} //@item(snipBar, "bar", "func(fn func())", "func")
|
|
|
|
type Foo struct {
|
|
Bar int //@item(snipFieldBar, "Bar", "int", "field")
|
|
}
|
|
|
|
func (Foo) Baz() func() {} //@item(snipMethodBaz, "Baz", "func() func()", "method")
|
|
func (Foo) BazBar() func() {} //@item(snipMethodBazBar, "BazBar", "func() func()", "method")
|
|
|
|
func _() {
|
|
f //@snippet(" //", snipFoo, "foo(${1:})", "foo(${1:i int}, ${2:b bool})")
|
|
|
|
bar //@snippet(" //", snipBar, "bar(${1:})", "bar(${1:fn func()})")
|
|
|
|
bar(nil) //@snippet("(", snipBar, "bar", "bar")
|
|
bar(ba) //@snippet(")", snipBar, "bar(${1:})", "bar(${1:fn func()})")
|
|
var f Foo
|
|
bar(f.Ba) //@snippet(")", snipMethodBaz, "Baz()", "Baz()")
|
|
(bar)(nil) //@snippet(")", snipBar, "bar(${1:})", "bar(${1:fn func()})")
|
|
(f.Ba)() //@snippet(")", snipMethodBaz, "Baz()", "Baz()")
|
|
|
|
Foo{
|
|
B //@snippet(" //", snipFieldBar, "Bar: ${1:},", "Bar: ${1:int},")
|
|
}
|
|
|
|
Foo{B} //@snippet("}", snipFieldBar, "Bar: ${1:}", "Bar: ${1:int}")
|
|
Foo{} //@snippet("}", snipFieldBar, "Bar: ${1:}", "Bar: ${1:int}")
|
|
|
|
Foo{Foo{}.B} //@snippet("} ", snipFieldBar, "Bar", "Bar")
|
|
|
|
var err error
|
|
err.Error() //@snippet("E", Error, "Error()", "Error()")
|
|
f.Baz() //@snippet("B", snipMethodBaz, "Baz()", "Baz()")
|
|
|
|
f.Baz() //@snippet("(", snipMethodBazBar, "BazBar", "BazBar")
|
|
}
|