Now checking if a field is not anonymous before
skipping it when walking over values in an struct, to make sure that we
don't skip validly accessible (exported) embedded values in an
unexported field.

This new checking logic is the new recommended strategy for reflective
struct walking as of the Go 1.6 release.

Related/References:

- Go 1.6 reflect release note: https://golang.org/doc/go1.6#reflect
- Issue: https://golang.org/issue/12367
    (https://github.com/golang/go/issues/12367)
- CL: https://golang.org/cl/14085
    (https://go-review.googlesource.com/#/c/14085/)
- Commit: https://github.com/golang/go/commit/afe9837b23f889c59144d90ce3ae87d32aee59fe
1 file changed
tree: 2d62408025a3e253065e69c612e8ff596c158c8b
  1. query/
  2. .gitignore
  3. CONTRIBUTING.md
  4. LICENSE
  5. README.md
README.md

go-querystring

go-querystring is Go library for encoding structs into URL query parameters.

Documentation: http://godoc.org/github.com/google/go-querystring/query
Build Status: Build Status

Usage

import "github.com/google/go-querystring/query"

go-querystring is designed to assist in scenarios where you want to construct a URL using a struct that represents the URL query parameters. You might do this to enforce the type safety of your parameters, for example, as is done in the go-github library.

The query package exports a single Values() function. A simple example:

type Options struct {
  Query   string `url:"q"`
  ShowAll bool   `url:"all"`
  Page    int    `url:"page"`
}

opt := Options{ "foo", true, 2 }
v, _ := query.Values(opt)
fmt.Print(v.Encode()) // will output: "q=foo&all=true&page=2"

License

This library is distributed under the BSD-style license found in the LICENSE file.