Enumerasi Dengan Data
Elemen enum juga dapat mempunyai satu atau lebih tipe data, memungkinkan mereka berperilaku seperti union dari C.
Ketika sebuah enum dicocokkan menggunakan match, kamu dapat mengikat sebuah nama variabel ke setiap nilai data.
Detail memori dari enum:
- Sebuah nilai data enum akan mempunyai ukuran memori yang sama dengan elemen terbesarnya. Ini memungkinkan semua nilai yang mungkin untuk muat di ruang memori yang sama.
- Selain tipe data elemen (jika ada), setiap elemen juga mempunyai nilai numerik yang merepresentasikan tag mana yang dimilikinya.
Detail lainnya:
enum di Rust adalah sesuatu yang juga dikenal sebagai tagged union.
- Penggabungan tipe untuk membuat tipe baru adalah apa yang orang maksud ketika mereka mengatakan Rust mempunyai algebraic types.