| # Crubit runtime support library |
| |
| This directory contains C++ and Rust libraries needed to support the C++ and |
| Rust FFI bindings that Crubit's tools generate: |
| |
| * The C++ and Rust code generated by Crubit's `rs_bindings_from_cc` and |
| `cc_bindings_from_rs` tools may depend on these libraries. For example, |
| compile-time assertions related to struct layout in the generated |
| `..._rs_api.h` depend on `crubit/support/offset_of.h`. |
| |
| * The C++ and Rust code that uses Crubit-generated bindings may need |
| to depend on these libraries. For example, Rust code that uses |
| Crubit-generated bindings for C++ may need to use the `forward_declare` crate |
| to perform safe casting between forward-declared and fully-defined types. |