4 releases

0.2.0+26.1 May 13, 2024
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

#19 in #data-interchange

Apache-2.0

37MB
787K SLoC

C++ 321K SLoC // 0.1% comments C# 150K SLoC // 0.1% comments Java 86K SLoC // 0.2% comments C 64K SLoC // 0.1% comments Objective-C 52K SLoC // 0.1% comments Bazel 29K SLoC // 0.1% comments Python 24K SLoC // 0.3% comments Bitbake 22K SLoC // 0.0% comments PHP 17K SLoC // 0.3% comments Ruby 7K SLoC // 0.1% comments Rust 7K SLoC // 0.1% comments Kotlin 2.5K SLoC // 0.1% comments Shell 2K SLoC // 0.2% comments Lua 1.5K SLoC // 0.1% comments Swift 350 SLoC // 0.1% comments Go 307 SLoC // 0.1% comments Dart 182 SLoC // 0.0% comments Batch 158 SLoC // 0.3% comments Emacs Lisp 85 SLoC // 0.5% comments Vim Script 71 SLoC // 0.2% comments Visual Studio Solution 53 SLoC AWK 33 SLoC // 0.1% comments Objective-C++ 15 SLoC // 0.6% comments PowerShell 8 SLoC // 0.4% comments M4 7 SLoC NuGet Config 6 SLoC

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.2.0"

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

~2.7–7.5MB
~139K SLoC