protobuf-go/encoding/protojson
Herbie Ong d2ece139c6 encoding/protojson: refactor to follow prototext pattern
All unmarshaling error messages now contain line number and column
information, except for the following errors:
- `unexpected EOF`
- `no support for proto1 MessageSets`
- `required fields X not set`

Changes to internal/encoding/json:
- Moved encoding funcs in string.go and number.go into encode.go.
- Separated out encoding kind constants from decoding ones.
- Renamed file string.go to decode_string.go.
- Renamed file number.go to decode_number.go.
- Renamed Type struct to Kind.
- Renamed Value struct to Token.
- Token accessor methods no longer return error.
  Name, Bool, ParsedString will panic if called on the wrong kind.
  Float, Int, Uint has ok bool result to check against.
- Changed Peek to return Token and error.

Changes to encoding/protojson:
- Updated internal/encoding/json API calls.
- Added line info on most unmarshaling error messages and kept
  description simple and consistent.

Change-Id: Ie50456694f2214c5c4fafd2c9b9239680da0deec
Reviewed-on: https://go-review.googlesource.com/c/protobuf/+/218978
Reviewed-by: Joe Tsai <thebrokentoaster@gmail.com>
2020-02-11 22:59:08 +00:00
..
bench_test.go
decode_test.go encoding/protojson: refactor to follow prototext pattern 2020-02-11 22:59:08 +00:00
decode.go encoding/protojson: refactor to follow prototext pattern 2020-02-11 22:59:08 +00:00
doc.go
encode_test.go internal/testprotos: hide all public testprotos 2020-01-12 08:32:55 +00:00
encode.go encoding/protojson: refactor to follow prototext pattern 2020-02-11 22:59:08 +00:00
well_known_types.go encoding/protojson: refactor to follow prototext pattern 2020-02-11 22:59:08 +00:00