Protocol Buffers - Google's data interchange format (grpc依赖) https://developers.google.com/protocol-buffers/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Joshua Haberman ddb74551f4 Cleanup Makefile and mv descriptor/ -> src/ 14 years ago
benchmarks Cache decoding objects for better benchmark results. (~15%) 14 years ago
lang_ext Lua support for fielddefs and getting their properties. 15 years ago
src Cleanup Makefile and mv descriptor/ -> src/ 14 years ago
tests Add (but do not activate) an SSE varint decoder. 14 years ago
tools Added constants for field names and numbers. 15 years ago
upb.xcodeproj Added Xcode project. 15 years ago
.gitignore Makefile is much improved ("make deps" works again, etc). 16 years ago
LICENSE More work on the decoder. 15 years ago
Makefile Cleanup Makefile and mv descriptor/ -> src/ 14 years ago
README Split src/ into core/ and stream/. 15 years ago
TODO Reduced the complexity of the cbparser interface. 15 years ago
gen-deps.sh Cleanup Makefile and mv descriptor/ -> src/ 14 years ago
perf-regression-test.py Precompute bit offset and bitmask for a small perf improvement. 14 years ago
perf-tests.sh Precompute bit offset and bitmask for a small perf improvement. 14 years ago

README


upb - a minimalist implementation of protocol buffers.

- For API documentation, see the header files.
- To build type "make".


ROADMAP OF THE SOURCE
=====================

benchmark/
Benchmarks of upb and other protocol buffer implementations.
core/
The core source directory. builds into core/libupb.a. Contains only the
very core library, which is capable of loading descriptors given the
appropriate decoder. Does not even contain decoders for the standard
formats like the protobuf text and binary formats.
descriptor/
Files that describe the format of Protocol Buffer "descriptors", which are
protocol buffers that describe the format of other protocol buffers. These
are used extensively inside upb.
labs/
Code that is not part of upb, but contains efficiency-related experiments
about alternate ways of implementing things. When possible, these are
benchmarked by the tests in benchmark/. We also test these with the tests
in tests/, to ensure that the alternate implementations are actually correct.
stream/
Implementations of streaming protobuf encoders and decoders.
tests/
Unit tests.
tools/
Command-line tools like the upb compiler.


CONTACT
=======

Author: Joshua Haberman (joshua@reverberate.org, haberman@google.com)
See LICENSE for copyright information.