곡유 νƒ€μž…

#[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와 같은 (λ‹¨μœ„) enum만 μ§€μ›λ©λ‹ˆλ‹€.
  • 곡유 νƒ€μž…μ˜ #[derive()]μ—λŠ” μ œν•œλœ 수의 νŠΈλ ˆμž‡μ΄ μ§€μ›λ©λ‹ˆλ‹€. C++ μ½”λ“œμ— λŒ€ν•΄μ„œλ„ μƒμ‘ν•˜λŠ” κΈ°λŠ₯이 μƒμ„±λ©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ Hashλ₯Ό νŒŒμƒν•˜λ©΄ ν•΄λ‹Ή C++ νƒ€μž…μ— λŒ€ν•œ std::hash κ΅¬ν˜„λ„ μƒμ„±λ©λ‹ˆλ‹€.