3 releases

0.1.2+3.19.1 Dec 24, 2021
0.1.1+3.19.1 Dec 23, 2021
0.1.0+3.19.1 Dec 23, 2021

#17 in #data-interchange

31 downloads per month

Apache-2.0

14MB
287K SLoC

C++ 209K SLoC // 0.1% comments Shell 25K SLoC // 0.2% comments M4 25K SLoC // 0.2% comments Bitbake 12K SLoC // 0.0% comments Python 5K SLoC // 0.4% comments Automake 3.5K SLoC // 0.1% comments Bazel 2.5K SLoC // 0.1% comments Visual Studio Project 2.5K SLoC Java 741 SLoC // 0.1% comments Go 307 SLoC // 0.1% comments Ruby 282 SLoC // 0.1% comments Visual Studio Solution 187 SLoC Objective-C 177 SLoC // 0.3% comments PHP 103 SLoC Dart 89 SLoC // 0.1% comments Emacs Lisp 86 SLoC // 0.5% comments Vim Script 71 SLoC // 0.2% comments Rust 61 SLoC // 0.5% comments Xcode Config 32 SLoC // 0.7% comments

protobuf-sys

crates.io CI Rust Documentation

Low-level bindings to libprotobuf, the C++ implementation of Protocol Buffers, Google's data interchange format.

View documentation.

Installation

# Cargo.toml
[dependencies]
protobuf-sys = "0.1.2+3.19.1"

lib.rs:

Low-level bindings to libprotobuf, the C++ implementation of Protocol Buffers, Google's data interchange format.

Maintainership

This crate is maintained by Materialize. Contributions are encouraged:

Details

Documentation for these types can be found in the official C++ API reference.

These bindings are automatically generated by autocxx. Many types and methods are missing due to missing features in autocxx. As autocxx improves, so will these bindings. If you discover new types that autocxx is capable of generating bindings for, please submit an issue!

At present, autocxx is invoked automatically in the crate's build script. This creates a dependency on libclang at build time via the clang-sys crate. Once the bindings stabilize, we plan to manually commit the generated bindings to the repository to avoid this dependency.

Depending on your use case, the handwritten bindings in protobuf-native may be more suitable.

Dependencies

~10–23MB
~343K SLoC