// +build go1.11

package bar

import (
	"golang.org/x/tools/internal/lsp/foo" //@item(foo, "foo", "\"golang.org/x/tools/internal/lsp/foo\"", "package")
)

func _() {
	_ = foo.StructFoo{} //@complete("S", Foo, IntFoo, StructFoo)
}

func Bar() { //@item(Bar, "Bar()", "", "func")
	foo.Foo()        //@complete("F", Foo, IntFoo, StructFoo)
	var _ foo.IntFoo //@complete("I", Foo, IntFoo, StructFoo)
	foo.()           //@complete("(", Foo, IntFoo, StructFoo)
}

func _() {
	var Valentine int //@item(Valentine, "Valentine", "int", "var")

	_ = foo.StructFoo{
		Val       //@complete("l", Value)
	}
  	_ = foo.StructFoo{
		Va        //@complete("a", Value)
	}
	_ = foo.StructFoo{
		Value: 5, //@complete("a", Value)
	}
	_ = foo.StructFoo{
		//@complete("", Value)
	}
	_ = foo.StructFoo{
		Value: Valen //@complete("le", Valentine)
	}
	_ = foo.StructFoo{
		Value:       //@complete(re"$", Valentine, foo, Bar)
	}
	_ = foo.StructFoo{
		Value:       //@complete(" ", Valentine, foo, Bar)
	}
}