Bo Yang
9449cf68cc
Make top level wrapper value parsing work
6 years ago
Bo Yang
20f1b6df41
Fix json decoding for wrapper messages
6 years ago
Bo Yang
72e66e2b55
Enable ignore unknown field in json parsing
7 years ago
Bo Yang
1080117f2b
Revert "Prepare upb_value for encoding/decoding map."
...
This reverts commit f30dd0ff0c
.
7 years ago
Bo Yang
f30dd0ff0c
Prepare upb_value for encoding/decoding map.
7 years ago
Bo Yang
86dec3021f
Implement decoding repeated message field.
7 years ago
Bo Yang
0833cf29b3
Bytes type should return size of stringview
7 years ago
Bo Yang
e06cc3d7cc
e->limit is invalidated after growing.
7 years ago
Josh Haberman
cea737028f
Added google/protobuf/descriptor.upb.* to core.
...
This is in preparation for making upb_def capable
of parsing binary descriptors directly.
We leave upb/descriptor/descriptor.upbdefs.* in
place for now, because upb/descriptor/reader.*
still depends on it.
Also removed a bit of cruft from the codegen.
7 years ago
Bo Yang
93aaf99347
Fix parsing sub-message field.
...
Buffer start place needs to be adjusted before parsing sub-message.
7 years ago
Bo Yang
dfe7d3a374
swap condition branches to remove negation
7 years ago
Bo Yang
ba93474aa2
Fix oneof encoding/decoding
7 years ago
Bo Yang
bc7f1eaca0
In case of circular dependency, layout has to be inserted first.
7 years ago
Bo Yang
719f644232
Field missing submsg and hasbit information.
7 years ago
Bo Yang
8c6d0e5545
Conversion from uint64 to uint32 didn't consider sign bit.
7 years ago
Bo Yang
cafebf6bee
For encoding upb needs descriptor type instead of type.
7 years ago
Bo Yang
0a9681874e
Modify TODO
7 years ago
Bo Yang
1e1c54f772
Change parameter type from enum opcode to int.
...
If the compiler elects to represent enum E as a char rather than an int
(per 6.7.2.2p4), the call to va_start() will have undefined behavior.
7 years ago
Bo Yang
ee7b049d19
Initialize tag to make compiler happy.
7 years ago
Joshua Haberman
0776f64830
Fixed JIT for unknown fields. ( #1 )
7 years ago
Bo Yang
dd77460c65
Do not expose encode_unknown
7 years ago
Bo Yang
69dee545ec
Remove upb_pb_encoder_encode_unknown
7 years ago
Bo Yang
6a6e192375
Remove unused declaration.
7 years ago
Bo Yang
6b4e07cc18
Remove upb_addunknown_handlerfunc
7 years ago
Bo Yang
5aa27d91c6
Use upb_sink_putunknown for reserve unknown
7 years ago
Bo Yang
dc9d15084f
Remove upb_addunknown_handlerfunc and upb_handlers_setaddunknown
7 years ago
Bo Yang
0b7904e18c
Reserve unknown fields in upb
...
1. For decoding, an unknownfields will be lazily created on message,
which contains bytes of unknown fields.
2. For encoding, if the unknownfields is present on message, all bytes
contained in it will be serialized.
7 years ago
Joshua Haberman
72c333eb03
Fixed amalgamated build.
7 years ago
Joshua Haberman
058a17f6a6
Fix amalgamated build.
7 years ago
Joshua Haberman
98f513fb8f
Fixed 32-bit build and added generated files.
7 years ago
Joshua Haberman
6b87674221
Address review comments and fix compile warnings.
7 years ago
Joshua Haberman
806ffc1d20
Responded to PR comments.
7 years ago
Joshua Haberman
15308afff2
Fixes for oneof conformance tests.
7 years ago
Joshua Haberman
b697882fb2
Fixed varint length when buffer is reallocated.
7 years ago
Joshua Haberman
be9094d91a
New encode/decode: most (171 / 192) conformance tests pass.
7 years ago
Joshua Haberman
edad06a9fa
WIP.
7 years ago
Joshua Haberman
1278ff8994
Responded to PR comments.
7 years ago
Joshua Haberman
c0a660f474
Added upb_stringview, the string representation for upb_msg.
7 years ago
Joshua Haberman
3e8acc3f4e
Removed incorrect assert and added comments.
7 years ago
Joshua Haberman
af43ea72b5
Removed incorrect assertion.
...
Internal members aren't initialized by default_msg.
7 years ago
Joshua Haberman
2826811367
Responded to PR comments.
7 years ago
Joshua Haberman
699b51b441
Lots of encoder/decoder work (backwards encoder).
7 years ago
Josh Haberman
1aafd4111b
A good start on upb_encode and upb_decode.
8 years ago
Joshua Haberman
9cb10577fc
First version of a real C codegen for upb.
...
Also includes an implementation of the conformance tests
to display what the API usage will be like.
There is still a lot to do, and things that are broken (oneofs,
repeated fields, etc), but it's a good start.
8 years ago
Joshua Haberman
76fcdd2ee9
Removed all upb_msgdef/upb_fielddef from upb_msg.
8 years ago
Joshua Haberman
1b9d37a00e
Start migrating upb_msglayout to be suitable for generated code.
...
This involves:
- remove upb_msglayout -> upb_msgfactory dependency.
- remove upb_msglayout -> upb_msgdef dependency (in progress).
- make upb_msglayout use a representation that can be
statically initialized by generated code.
The goal here is that upb_msglayout becomes a kind of "descriptor
lite": it contains enough data to parser and serialize protobufs
and manipulate a upb_msg in memory, while being far smaller and
simpler than a full descriptor. It also does not include field
names, which can be a benefit for applications that do not want
to leak field names.
Generated code can then create a upb_msglayout, and do most things
without ever needing to construct full descriptors/defs if they
don't want to.
8 years ago
Josh Haberman
cbc2d7af56
Responded to PR comments. This also fixed a few more conformance tests.
8 years ago
Josh Haberman
d04af15acb
Some fixes to make JSON properly recognize numbers in quotes.
8 years ago
Bo Yang
35f838e82d
php_namespace should be explicitly set even if it's empty.
8 years ago
Bo Yang
0a9b07ba86
Fix upb load descriptor when no messages defined in prorto.
8 years ago