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

#444 in Build Utils

35 downloads per month

Apache-2.0

12MB
245K SLoC

C++ 205K SLoC // 0.1% comments Shell 25K SLoC // 0.2% comments Python 4K SLoC // 0.4% comments Automake 3.5K SLoC // 0.1% comments C 2.5K SLoC // 0.2% comments Visual Studio Project 2K SLoC Java 741 SLoC // 0.1% comments Prolog 476 SLoC // 0.1% comments Go 307 SLoC // 0.1% comments Ruby 267 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 13 SLoC // 0.6% 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

~9–22MB
~319K SLoC