Crate'ler (Sandıklar)
crate_type
özelliği, derleyiciye crate'in bir binary(ikili) dosya mı yoksa kütüphane dosyası mı olduğunu bildirmek için kullanılabilir, (ve hatta hangi tipte bir kütüphane olduğunu), ve crate_name
özelliği, crate'in adını ayarlamak için kullanılabilir.
Bununla birlikte, Rust paket yöneticisi Cargo kullanırken hem crate_type
hem de crate_name
özelliklerinin hiçbir etkisi olmadığını unutmamak önemlidir. Cargo, Rust projelerinin büyük çoğunluğunda kullanıldığından, crate_type
ve crate_name
'in gerçek dünyadaki kullanımlarının göreli olarak sınırlı olduğu anlamına gelir.
// Bu crate bir kütüphanedir(library) #![crate_type = "lib"] // Bu kütüphanenin adı "rary"dir #![crate_name = "rary"] pub fn public_function() { println!("called rary's `public_function()`"); } fn private_function() { println!("called rary's `private_function()`"); } pub fn indirect_access() { print!("called rary's `indirect_access()`, that\n> "); private_function(); }
crate_type
özelliği kullanıldığında, artık --crate-type
bayrağını rustc
iletmek gerekmez.
$ rustc lib.rs
$ ls lib*
library.rlib