Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/tools/gopls: exclude unexported fields from hover information for structs #42654

Open
myitcv opened this issue Nov 17, 2020 · 1 comment
Open

x/tools/gopls: exclude unexported fields from hover information for structs #42654

myitcv opened this issue Nov 17, 2020 · 1 comment

Comments

@myitcv
Copy link
Member

@myitcv myitcv commented Nov 17, 2020

What version of Go are you using (go version)?

$ go version
go version devel +869e2957b9 Mon Nov 16 22:24:14 2020 +0000 linux/amd64
$ go list -m golang.org/x/tools
golang.org/x/tools v0.0.0-20201111213328-5794f8bd7a57
$ go list -m golang.org/x/tools/gopls
golang.org/x/tools/gopls v0.0.0-20201111213328-5794f8bd7a57

Does this issue reproduce with the latest release?

Yes

What operating system and processor architecture are you using (go env)?

go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/myitcv/.cache/go-build"
GOENV="/home/myitcv/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/home/myitcv/gostuff/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/myitcv/gostuff"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/home/myitcv/gos"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/home/myitcv/gos/pkg/tool/linux_amd64"
GOVCS=""
GOVERSION="devel +869e2957b9 Mon Nov 16 22:24:14 2020 +0000"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/myitcv/.vim/plugged/govim/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build164265260=/tmp/go-build -gno-record-gcc-switches"

What did you do?

-- go.mod --
module other

go 1.16

require cuelang.org/go v0.3.0-alpha4.0.20201116194914-7463d11dea50
-- main.go --
package main

import "cuelang.org/go/cue"

func main() {
	var _ cue.Path
}

Hover over Path

What did you expect to see?

Only the exported fields of cue.Path

What did you see instead?

type Path struct {
        path []Selector
}
A Path is series of selectors to query a CUE value

Log file: bad.log


cc @stamblerre

FYI @leitzler

@gopherbot gopherbot added the Tools label Nov 17, 2020
@gopherbot gopherbot added this to the Unreleased milestone Nov 17, 2020
@stamblerre
Copy link
Contributor

@stamblerre stamblerre commented Nov 17, 2020

The hover information for structs is actually just the AST node of the declaration. I guess we could filter out the unexported fields, but that would require cloning the AST node.

@stamblerre stamblerre changed the title x/tools/gopls: hover information for struct includes unexported fields x/tools/gopls: exclude unexported fields from hover information for structs Nov 17, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants
You can’t perform that action at this time.