git/contrib/libgit-sys
Calvin Wan 65c10aa8d5 libgit: add higher-level libgit crate
The C functions exported by libgit-sys do not provide an idiomatic Rust
interface. To make it easier to use these functions via Rust, add a
higher-level "libgit" crate, that wraps the lower-level configset API
with an interface that is more Rust-y.

This combination of $X and $X-sys crates is a common pattern for FFI in
Rust, as documented in "The Cargo Book" [1].

[1] https://doc.rust-lang.org/cargo/reference/build-scripts.html#-sys-packages

Co-authored-by: Josh Steadmon <steadmon@google.com>
Signed-off-by: Josh Steadmon <steadmon@google.com>
Signed-off-by: Calvin Wan <calvinwan@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2025-01-29 15:06:50 -08:00
..
src libgit: add higher-level libgit crate 2025-01-29 15:06:50 -08:00
Cargo.lock
Cargo.toml
README.md
build.rs
public_symbol_export.c libgit-sys: also export some config_set functions 2025-01-29 15:06:50 -08:00
public_symbol_export.h libgit-sys: also export some config_set functions 2025-01-29 15:06:50 -08:00

README.md

libgit-sys

A small proof-of-concept crate showing how to provide a Rust FFI to Git internals.