package variadic func foo(i int, strs ...string) {} func bar() []string { //@item(vFunc, "bar", "func() []string", "func") return nil } func _() { var ( i int //@item(vInt, "i", "int", "var") s string //@item(vStr, "s", "string", "var") ss []string //@item(vStrSlice, "ss", "[]string", "var") ) foo() //@rank(")", vInt, vStr),rank(")", vInt, vStrSlice) foo(123, ) //@rank(")", vStr, vInt),rank(")", vStrSlice, vInt) foo(123, "", ) //@rank(")", vStr, vInt),rank(")", vStr, vStrSlice) foo(123, s, "") //@rank(", \"", vStr, vStrSlice) // snippet will add the "..." for you foo(123, ) //@snippet(")", vStrSlice, "ss...", "ss..."),snippet(")", vFunc, "bar()...", "bar()..."),snippet(")", vStr, "s", "s") }