Спільні типи
#[cxx::bridge]
mod ffi {
    #[derive(Clone, Debug, Hash)]
    struct PlayingCard {
        suit: Suit,
        value: u8,  // A=1, J=11, Q=12, K=13
    }
    enum Suit {
        Clubs,
        Diamonds,
        Hearts,
        Spades,
    }
}
- Підтримуються тільки C-подібні (одиничні) переліки.
 - Для 
#[derive()]на спільних типах підтримується обмежена кількість трейтів. Відповідна функціональність також генерується для C++ коду, наприклад, якщо ви виводитеHash, також генерується реалізаціяstd::hashдля відповідного типу C++.