google/crubit
A bidirectional bindings generator for C++ and Rust.
https://skillcdn.ai/gh/google/crubitConnect this address to your AI to use these skills. How to connect
- Unverified
- Default branch
main - Commit
a9601ab - License
Apache-2.0
Explore this repository
Searches the original text of skills and documents; display translations are not searched.
Documents
- Bridge types as struct fieldsCrubit does not support compound data types containing bridge types, unless the compound data type itself can be bridged.docs/errors/bridge_compound_type.md
- Bridge types as struct fieldsCrubit does not support exposing struct or union fields with bridge types.docs/errors/bridge_field.md
- The `Delete` traitIf you've encountered this error when using Crubit's virtual_unique_ptr<T>, note that virtual_unique_ptr<T> is only available when T is a C++ type with a virtual destructor or which overrides operato…docs/errors/delete.md
- ErrorsWhen Crubit can't generate bindings for an item, it usually leaves a comment in the generated bindings explaining why, often with a link to one of the pages below. To find the comment, look at the ge…docs/errors/index.md
- Nested type errorsRust does not offer a way to model nested C++ types. To compensate for this, similar to Rust protocol buffers and their nested message support, Crubit creates a snake_case module to hold nested types…docs/errors/nested_type.md
- Unknown attribute errorsC++ and Rust allow the use of attributes to customize the behavior and semantics of a piece of syntax. For example, the C++ [[nodiscard]] and Rust #[must_use] attributes cause a compilation error if…docs/errors/unknown_attribute.md
- Unsupported type errorsSometimes, a type is not supported in Crubit. This presents a problem for all functions that use that type, and so Crubit aims to actually cover all C++ types, even if in only minimal form. However,…docs/errors/unsupported_type.md
- Visibility errorsIn Crubit's :wrapper mode, pub(crate) types can be generated, which are restricted to a specific library. This is generally a temporary state of affairs: as a way of enabling types to be used for a s…docs/errors/visibility.md