inchi-sys 0.1.0

Low-level FFI bindings to the vendored IUPAC InChI 1.07 reference C library
Documentation
inchi-sys-0.1.0 has been yanked.

inchi-sys

crates.io docs.rs

Low-level -sys FFI bindings to the vendored IUPAC InChI 1.07.3 reference C library. The C source is bundled and statically linked (links = "inchi") via a cc build script — no system install, no network at build time.

Use the inchi crate instead

This crate exposes only raw, unsafe C bindings (GetINCHI, GetStructFromINCHI, GetINCHIKeyFromINCHI, MakeINCHIFromMolfileText, the *Ex polymer entry points, …) with no safety, RAII, or ergonomics.

For almost all uses, depend on the safe, idiomatic wrapper:

[dependencies]
inchi = "0.1"

https://crates.io/crates/inchi · https://docs.rs/inchi

Reach for inchi-sys directly only when you need an entry point the safe crate does not yet wrap.

Bindings

Pre-generated bindings (src/bindings.rs) are committed, so the default build needs no libclang. Regenerate them from the vendored headers with:

cargo build -p inchi-sys --features regenerate-bindings

Vendored source & patches

The InChI C sources live under vendor/, which documents the exact upstream version, what is included, how to update, and the single local memory-safety patch applied to GetStructFromINCHIEx.

License

MIT. Bundles the IUPAC InChI software (MIT); see vendor/inchi/LICENSE.