রাস্ট হচ্ছে মেমরি সেইফ কম্পাইলড্ ল্যাংঙ্গুয়েজ যার পারফর্মেন্স সি/সি++ এর কাছাকাছি বা কখনো কখনো তাদের থেকে ভালো
নতুন প্রজেক্ট তৈরি করা
cargo init YOUR_PROJECTকোনো CLI ইন্সটল করা
cargo install YOUR_CLIgit ছাড়া প্রজেক্ট তৈরি করা
cargo init YOUR_PROJECT --vcs noneকারেন্ট ডাইরেক্টরিতে প্রজেক্ট তৈরি করা
cargo init .প্রজেক্ট বিল্ড করা(debug)
cargo buildপ্রজেক্ট বিল্ড করা(release)
cargo build --releaseটেস্ট রান করা
cargo testপ্রজেক্ট রান করা(debug)
cargo runপ্রজেক্ট রান করা(release)
cargo run --releaseঅন্য টার্গেট এর জন্য কম্পাইল করা
cargo build --target=YOUR-TARGETপ্রজেক্টের docs জেনারেট করা
cargo docnightly toolchain ব্যবহার করা
rustup default nightlytoolchain আপডেট করা
rustup update toolchainTarget ইনস্টল করা
rustup target add TARGETআর্গুমেন্টে String এবং str দুটাই অ্যালাউ করা
fn the_function(arg: impl AsRef<str>) {
//do something
}struct এর জন্য কোনো trait ইমপ্লিমেন্ট করা
impl SomeTrait for SomeStruct {
// Trait stuff here
}trait ডিক্লেয়ার করা
trait SomeTrait {
// Your trait stuff here
}Panicking
panic!("Houston, we have a problem");Match
match Somestuff {
2 => println!("It's 2!"),
_ => println!("It's something else")
}Struct
struct SomeStruct {
some_private_value: String,
pub some_public_value: u64
}Implementing struct
impl SomeStruct {
pub fn new() {}
}কোনো ডিপেন্ডেন্সির নামসহ ভার্সন
CRATE = "CRATE_VERSION"ক্রেটের নির্দিষ্ট ফিচার ব্যবহার করা
CRATE = { version = "VERSION", features = ["FEATURE-1"] }লিংক টাইম অপ্টিমাইজেশন ব্যবহার করা(release বিল্ড)
[profile.release]
lto=trueলিংক টাইম অপ্টিমাইজেশন ব্যবহার করা(debug বিল্ড)
[profile.debug]
lto=trueThe Book
https://docs.rust-lang.org/bookPackage registry
https://crates.ioCrates documentations
https://docs.rs