protobuf-go/internal/encoding
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
..
defval encoding/prototext: rewrite of internal/encoding/text 2020-02-05 02:11:08 +00:00
json encoding/protojson: refactor to follow prototext pattern 2020-02-11 22:59:08 +00:00
messageset proto, internal/errors: add Error sentinel, errors.Wrap 2020-02-07 21:09:48 +00:00
pack
tag internal/filedesc: use jsonName.Init method over JSONName constructor 2020-01-06 18:42:14 +00:00
text encoding/prototext: make unexpected EOF error into proto.Error 2020-02-07 19:00:45 +00:00
wire internal/impl: inline small tag decoding 2020-01-26 22:23:05 +00:00