Joshua Haberman
806ba1c80d
Another round of fixes.
...
test_vs_proto2.googlemessage1 passes again,
with no memory leaks!
14 years ago
Joshua Haberman
fbb9fd35e0
Improve comments in headers, to better explain core interfaces.
14 years ago
Joshua Haberman
fe659c8c93
Getting closer to a decoder that could actually compile and work.
14 years ago
Joshua Haberman
58a70b55c6
Decoder code structure is mostly in-place.
14 years ago
Joshua Haberman
a695b92cce
Debugging test_def, it's close to working again!
14 years ago
Joshua Haberman
bcc688a303
upb_def compiles again!
14 years ago
Joshua Haberman
b471ca6b81
The last major revision to the upb_stream protocol.
...
Sources and sinks communicate by means of a
upb_handlers object, which encapsulates a set of
handler callbacks and will possibly offer richer
semantics in the future like giving specific
fields different callbacks.
The upb_handlers protocol supports delegation, so
sets of handlers can be written in reusable ways.
For example, if a set of handlers is written to
handle a specific .proto type, those handlers can
be used whether that type is at the top level or
whether it is a sub-message of a higher-level type.
Delegation allows the streaming protocol to
properly compose.
14 years ago
Joshua Haberman
5871ed0d02
First go at Lua bindings.
15 years ago
Joshua Haberman
7a6a702792
Allow static upb_strings.
...
This can allow strings to reference static data, and
reduced the memory footprint of test_def by about 10%
(3k).
15 years ago
Joshua Haberman
2ef013126c
Fleshed out upb_string further. Now upb_def's only
...
unresolved references are upb_src.
15 years ago
Joshua Haberman
e29bf964d1
Tests for string and fleshed out implementation.
15 years ago
Joshua Haberman
28ec9a1fa0
Split src/ into core/ and stream/.
15 years ago
Joshua Haberman
be5ddd8a64
Tweaks to upb_src/upb_sink interfaces.
15 years ago
Joshua Haberman
a417be0f87
More work on upb_def.
15 years ago
Joshua Haberman
229fcf7119
upb_def compiles again, though with lots of #if 0.
15 years ago
Joshua Haberman
6bf58a7328
Incremental progress on upb_def.
15 years ago
Joshua Haberman
5633254357
Implement proper type checking again.
15 years ago
Joshua Haberman
5743636ad1
Decoder compiler but doesn't work yet.
15 years ago
Joshua Haberman
992a03be55
More decoder work, first attempts at compiling it.
15 years ago
Joshua Haberman
a484ea0275
WIP: intrusive changes to upb_decoder.
15 years ago
Joshua Haberman
c615d11ce7
More work on string type.
15 years ago
Joshua Haberman
0e0af2dafd
Created skeleton of a new, much simpler string type.
15 years ago
Joshua Haberman
c241976485
In the midst of a major refactoring.
15 years ago
Joshua Haberman
a95ab58e79
Overhaul defs to derive from a common base.
15 years ago
Joshua Haberman
a022e6ebdb
Fixes for more discerning compilers.
15 years ago
Joshua Haberman
040f7e6ba2
Significant memory-management refactoring any Python extension.
15 years ago
Joshua Haberman
1e82f0ebd6
A few more thread-safety fixes.
16 years ago
Joshua Haberman
2282d2489b
Refactoring: unify upb_msg.
...
The cost is that a upb_msg will now always have an overhead
of 2*sizeof(void*). This is comparable to proto2 overhead.
The benefit is that upb_msg is now self-describing, and
read-only algorithms can now operate on a upb_msg regardless
of the memory-management scheme.
Also, upb_array and upb_string now know inherently if they
own their associated memory, and upb_array has a generic
pointer for memory management purposes like upb_msg does.
16 years ago
Joshua Haberman
4240e0e598
Updated parser semantics to better support streaming.
16 years ago
Joshua Haberman
ee1ed1ccb8
Compiler finally works (except string arrays). Untested. Holy crap that was a lot of work.
16 years ago
Joshua Haberman
e8718306a5
Bugfix and additions to upb.h and upb_string.h
16 years ago
Joshua Haberman
462b26c1cc
Directory restructuring.
16 years ago
Joshua Haberman
b2bbafb674
Header file changes for C++ compatibility.
16 years ago
Joshua Haberman
b94a9f2101
More documentation, tidying up, etc.
16 years ago
Joshua Haberman
7f871401c7
More work on upbc.
16 years ago
Joshua Haberman
94a2f5bd9c
Move upb_string into its own header file.
16 years ago