Skip to content
/ autocxx Public

Tool for safe ergonomic Rust/C++ interop driven from existing C++ headers

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

google/autocxx

Folders and files

NameName
Last commit message
Last commit date
Feb 20, 2023
Mar 9, 2023
Mar 9, 2023
Apr 14, 2023
Mar 9, 2023
Mar 9, 2023
Apr 14, 2023
Mar 9, 2023
Mar 9, 2023
Apr 14, 2023
Mar 9, 2023
Feb 27, 2022
Jan 18, 2022
Mar 9, 2023
Mar 9, 2023
Aug 14, 2020
Aug 14, 2020
Feb 28, 2022

Autocxx

GitHub crates.io docs.rs

This project is a tool for calling C++ from Rust in a heavily automated, but safe, fashion.

The intention is that it has all the fluent safety from cxx whilst generating interfaces automatically from existing C++ headers using a variant of bindgen. Think of autocxx as glue which plugs bindgen into cxx.

For full documentation, see the manual.

Overview

autocxx::include_cpp! {
    #include "url/origin.h"
    generate!("url::Origin")
    safety!(unsafe_ffi)
}

fn main() {
    let o = ffi::url::Origin::CreateFromNormalizedTuple("https",
        "google.com", 443);
    let uri = o.Serialize();
    println!("URI is {}", uri.to_str().unwrap());
}

License and usage notes

This is not an officially supported Google product.

Licensed under either of Apache License, Version 2.0 or MIT license at your option.

About

Tool for safe ergonomic Rust/C++ interop driven from existing C++ headers

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages