| # Examples of using Crubit | |
| The `examples/` directory contains copy-pastable example snippets. | |
| `examples/cpp/` contains example C++ header files, and how to call them from | |
| Rust -- for example, `examples/cpp/function` shows how to call a C++ function | |
| from Rust. `examples/rust` contains example Rust modules, and how to call them | |
| from C++. | |
| In every case, examples have the following files: | |
| 1. The original Rust/C++ file that will be used, called either `example.h` or | |
| `example.rs` | |
| 2. An example usage of that file via FFI using Crubit, called either `main.rs` | |
| or `main.cc`. | |
| 3. A copy of the code that Crubit generates at runtime, called either | |
| `example_generated.rs` or `example_generated.h`. This isn't something you | |
| should ever use directly, it is only here for exposition. (The checked-in | |
| copies of what Crubit generates are kept in sync using a golden test | |
| framework, but ordinarily, you will use the C++ header / Rust module that | |
| Crubit generates on the fly, dynamically.) |