Paket dan Crate
Apa itu crate?
Sebuah crate merupakan jumlah kode terkecil yang dipertimbangkan oleh kompiler Cairo pada suatu waktu. Bahkan jika Anda menjalankan cairo-compile
daripada scarb build
dan menyertakan sebuah file kode sumber tunggal, kompiler akan mempertimbangkan file tersebut sebagai sebuah crate. Crate dapat berisi modul-modul, dan modul-modul tersebut mungkin didefinisikan dalam file-file lain yang dikompilasi bersama dengan crate tersebut, seperti yang akan dibahas pada bagian-bagian selanjutnya.
Apa itu crate root?
Crate root merupakan file sumber lib.cairo
yang menjadi awal dari kompilasi oleh kompiler Cairo dan membentuk modul root dari crate Anda (kami akan menjelaskan modul secara mendalam pada bagian “Defining Modules to Control Scope”).
Apa itu sebuah paket?
Sebuah paket Cairo adalah kumpulan satu atau lebih crate dengan file Scarb.toml yang menjelaskan bagaimana cara membangun crate-crate tersebut. Ini memungkinkan pemisahan kode menjadi bagian-bagian yang lebih kecil dan dapat digunakan kembali, serta memfasilitasi manajemen dependensi yang lebih terstruktur.
Membuat Paket dengan Scarb
Anda dapat membuat paket Cairo baru menggunakan perangkat baris perintah scarb. Untuk membuat paket baru, jalankan perintah berikut:
scarb new my_package
Perintah ini akan membuat direktori paket baru bernama my_package
dengan struktur berikut:
my_package/
├── Scarb.toml
└── src
└── lib.cairo
src/
adalah direktori utama di mana semua file sumber Cairo untuk paket akan disimpan.lib.cairo
adalah modul root default dari crate, yang juga merupakan titik masuk utama dari paket.Scarb.toml
adalah file manifest paket, yang berisi metadata dan opsi konfigurasi untuk paket, seperti dependensi, nama paket, versi, dan penulis. Anda dapat menemukan dokumentasi tentang ini pada referensi scarb.
[package]
name = "my_package"
version = "0.1.0"
[dependencies]
# foo = { path = "vendor/foo" }
Saat Anda mengembangkan paket Anda, Anda mungkin ingin mengorganisir kode Anda ke dalam beberapa file sumber Cairo. Anda dapat melakukannya dengan membuat file-file .cairo
tambahan di dalam direktori src
atau subdirektorinya.