Joshua Haberman
421f276086
Beginnings of a upb compiler.
16 years ago
Joshua Haberman
94a2f5bd9c
Move upb_string into its own header file.
16 years ago
Joshua Haberman
aecbfe4224
Moved upb_enum to a proper C file, updated upb_inlinedefs.
16 years ago
Joshua Haberman
62be5969a1
Move FileDescriptorProto to an internal symbol table.
16 years ago
Joshua Haberman
9eaab71e99
Fixed bugs and memory leaks.
16 years ago
Joshua Haberman
485b964662
Bugfixes.
16 years ago
Joshua Haberman
2c5c3fdc25
More tests and fixes.
16 years ago
Joshua Haberman
b0ef7f0b67
More fixes, completions, still doesn't quite work.
16 years ago
Joshua Haberman
b8481e0e55
A bit more work on generalizing parsing.
16 years ago
Joshua Haberman
6fdf83f59f
Let gcc do dependency generation.
16 years ago
Joshua Haberman
692b203ae2
Functions for iterating over the symbol table.
16 years ago
Joshua Haberman
fd1ad20a2d
Remove public visibility from a few parsing functions.
16 years ago
Joshua Haberman
c21ad57da6
More work to msg and parse. Getting close!
16 years ago
Joshua Haberman
f813688f3e
Major revision to upb_parse.
16 years ago
Joshua Haberman
9fcddef19f
Updated comment to reflect code change.
16 years ago
Joshua Haberman
2d21601d47
Reworked low-level parsing: smaller, safer.
16 years ago
Joshua Haberman
5e2691460e
Ditch abbreviated field business.
16 years ago
Joshua Haberman
03616c86ea
Fixed test_table and a few bugs in upb_table.
16 years ago
Joshua Haberman
01fb1d45ed
Stubbed out a few more methods in _msg and _context.
16 years ago
Joshua Haberman
1139650320
Use "static inline" instead of "extern inline" for now.
16 years ago
Joshua Haberman
2da3b081c4
More work on upb_context.
16 years ago
Joshua Haberman
3a67a1e9f9
upb_msg constructor now more or less works.
16 years ago
Joshua Haberman
c7f2a271ae
Small improvement to bitmasking that generates better code.
16 years ago
Joshua Haberman
88cc3f2fc8
Progress implementing upb_msg.
16 years ago
Joshua Haberman
ec67a5ded6
Implemented a bit more of upb_context.
16 years ago
Joshua Haberman
9595dfa2dc
Fleshed out upb_context some.
16 years ago
Joshua Haberman
edd137fe99
Two small fixes.
16 years ago
Joshua Haberman
b11730f2ed
Added a upb_context object, which is like an interpreter context.
16 years ago
Joshua Haberman
f8f689ad31
Add upb_inlinedefs.c, which emits definitions for inline functions.
16 years ago
Joshua Haberman
0f26f51486
Fix varint-skipping (oops).
16 years ago
Joshua Haberman
324d5cce9b
Renamed upb_struct -> upb_msg, fleshed out its definition.
16 years ago
Joshua Haberman
7ccb32c305
Finished hashtable implementation, not yet tested.
16 years ago
Joshua Haberman
e3905b425a
Simplified the varint-skipping function.
16 years ago
Joshua Haberman
0124bfd8fe
More work on inttable/strtable (not finished).
16 years ago
Joshua Haberman
9c21992286
Added MurmurHash for string hashing (not used yet).
16 years ago
Joshua Haberman
9f80d0d60e
Do unaligned reads if UPB_UNALIGNED_READS_OK is defined.
...
Also removed commented-out alternate implementations for
varint-reading code (they are still in the history).
16 years ago
Joshua Haberman
2bb7637797
Fixed conversion warning in tests.c.
16 years ago
Joshua Haberman
79d57263f5
Improvements to one-branch varint reading function.
16 years ago
Joshua Haberman
d1aa095cb3
High-level parsing interface written (not yet tested).
16 years ago
Joshua Haberman
0f50bcbceb
Small Makefile tweak.
16 years ago
Joshua Haberman
b04a376636
Alternative (optimized) implementations of varint parsing.
16 years ago
Joshua Haberman
24c14a3ad0
Increased robustness of 64-bit varint test.
16 years ago
Joshua Haberman
c419731462
Bring 'tests' back up to date and build it again.
16 years ago
Joshua Haberman
bc717d8402
Implement inlining that works with both C99 and all versions of GCC.
16 years ago
Joshua Haberman
ccca4d7136
Acknowledge authorship and fix warning in the eng() function.
16 years ago
Joshua Haberman
5ec762a600
Added TODO about experimenting with Cuckoo Hashing.
16 years ago
Joshua Haberman
f4c00fc979
More work on the table implementation.
...
It currently beats std::map and std::hash_map by >10x.
16 years ago
Joshua Haberman
0aedd1825f
Makefile: build descriptor.o.
16 years ago
Joshua Haberman
d1f78c88fa
A bunch more work, a fast table for field lookup.
16 years ago
Joshua Haberman
0c80c38475
A flurry of activity. Doesn't compile yet.
...
- a descriptor.c that describes the data structures in
descriptor.proto using the data structures in descriptor.h.
- everything renamed pbstream -> upb.
- modularization rethought.
- Doesn't compile yet, but should once things settle back down.
16 years ago