Skip to content

mtehver/protobuf

 
 

Repository files navigation

Lightweight version of Google's Protocol Buffers for C++11

Copyright 2008 Google Inc.

https://developers.google.com/protocol-buffers/

About

Protobuf is an excellent tool for data interchange but Google's implementation for C++ requires very large runtime part even in simple use cases (reading protobuf message).

This project is a fork of Google'c protoc compiler that generates a single header file for each proto-file and has minimal compile-time dependencies (single header file of approximately 7KB plus STL). Generated API is mostly compatible with original API, though only methods related to reading data are generated. Decoding code is based on the MapBox pbf.hpp project, written by Dane Springmeyer.

Limitations

Only protobuf messages are supported, services are not supported. Only C++11 is supported (though the generated code is also compatible with Visual C++ 2013 or later).

Stream decoding is not supported, message must be fully loaded into memory before decoding.

Only very limited testing is done, but no issues are known.

Usage

Compilation instructions for protoc are provided in the original protobuf project. For API usage, see examples folder.

About

Protocol Buffers - Google's data interchange format

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 63.4%
  • Java 24.2%
  • Python 11.1%
  • Objective-C 0.5%
  • C 0.4%
  • Shell 0.2%
  • Other 0.2%