From 5013666476bcfbe932d9bf976be38b52f511e273 Mon Sep 17 00:00:00 2001 From: Afifurrohman Date: Sat, 13 Apr 2024 20:39:22 +0700 Subject: [PATCH 01/11] fix(docs/basic/hello-rust.md): naming convention for function, use `_` instead of `camelCase` --- docs/basic/hello-rust.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/basic/hello-rust.md b/docs/basic/hello-rust.md index 885ab35a..9301ff01 100644 --- a/docs/basic/hello-rust.md +++ b/docs/basic/hello-rust.md @@ -68,12 +68,12 @@ fn main() { Pembuatan fungsi di Rust menggunakan keyword `fn` dengan notasi penulisan sebagai berikut, contoh: ```bash -fn namaFungsi() { +fn nama_fungsi() { } ``` -`namaFungsi` di atas adalah nama fungsi. Pada program yang sudah kita buat, fungsi bernama `main`. Penulisan nama fungsi diikuti dengan `()` kemudian kurung kurawal `{ }`. +`nama_fungsi` di atas adalah nama fungsi. Pada program yang sudah kita buat, fungsi bernama `main`. Penulisan nama fungsi diikuti dengan `()` kemudian kurung kurawal `{ }`. - Sintaks `()` nantinya bisa diisi dengan definisi parameter. Pada contoh ini tidak ada parameter yang ditulis. - Sintaks `{}` dituliskan dalam baris berbeda, isinya adalah kode program. @@ -83,7 +83,7 @@ fn namaFungsi() { Notasi penulisan pemanggilan fungsi adalah cukup dengan menuliskan nama fungsinya kemudian diikuti dengan `()`, seperti berikut: ```bash -namaFungsi(); +nama_fungsi(); ``` Jika ada argument parameter yang perlu disisipkan saat pemanggilan fungsi, dituliskan di antara kurung `()`. Contoh pemanggilan `sebuahFungsi` dengan argument berupa string `"sebuah argument"`. From 2a47130661748fd1651630d3bfaac920ddf54a71 Mon Sep 17 00:00:00 2001 From: Afifurrohman Date: Sat, 4 May 2024 22:40:07 +0700 Subject: [PATCH 02/11] feat: Update `attributes.md` add conditional compilation profile, `forbid` attribute example and note. --- docs/basic/attributes.md | 79 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 76 insertions(+), 3 deletions(-) diff --git a/docs/basic/attributes.md b/docs/basic/attributes.md index 78987319..43107790 100644 --- a/docs/basic/attributes.md +++ b/docs/basic/attributes.md @@ -163,7 +163,7 @@ Bisa dilihat, hasilnya program tereksekusi tanpa error. Enum `Superhero` kini me ## A.49.3. Attribute `cfg` / *configuration* -Attribute `cfg` digunakan untuk menentukan beberapa konfigurasi yang berhubungan dengan arsitekture hardware/prosesor. +Attribute `cfg` digunakan untuk menentukan beberapa konfigurasi seperti conditional compilation atau target arsitekture hardware/prosesor. Salah satu contoh penerapannya bisa dilihat pada kode berikut. Ada 2 buah module yang namanya sama persis, perbedaannya adalah satu didefinisikan khusus untuk platform `linux`, dan satunya lagi untuk platform `windows`. Hal seperti ini bisa dilakukan menggunakan attribute `cfg` dengan key `target_os`. @@ -206,6 +206,49 @@ fn main() { } ``` +Selain itu, kita juga bisa menggunakannya untuk conditional compilation based on profile. + +Mungkin di bahasa pemrograman lain kita biasa mengunakan `if` condition dan `ENV` environment variable untuk menjalankan code tertentu saat app berjalan di environment production atau local. + +Di rust, kita bisa menggunakan sekenario ini pada compile time!. + +Pada kode sebelumnya coba tambahkan kode berikut pada main function: +```rust +fn main() { + // .... + if cfg!(debug_assertions) { + println!("Debugging....") + } else { + println!("Release....") + } + + #[cfg(debug_assertions)] + { + println!("Simulate Load env file..."); + } + + + #[cfg(not(debug_assertions))] + { + println!("🦀") + } + +} +``` +Jika Kode di atas di jalankan dengan `cargo run` maka akan menghasilkan output: +``` +Debugging.... +Simulate Load env file... +``` + +By default cargo run menggunakan profile `debug` maka output tersebut lah yang akan muncul. + +Sebaliknya jika kita menggunakan command `cargo run --release` maka cargo akan menggunakan profile `release`. +``` +Release.... +🦀 +``` + Ada beberapa key yang tersedia pada attribute `cfg`, di antaranya: ### ◉ Configuration `target_os` @@ -248,7 +291,7 @@ Opsi value yang tersedia: ### ◉ Other configuration -Ada beberapa key konfigurasi lainnya yang tersedia. Lebih detailnya silakan lihat di https://doc.rust-lang.org/reference/conditional-compilation.html#set-configuration-options. +Ada beberapa key konfigurasi lainnya yang tersedia. Lebih detailnya silakan lihat di https://doc.rust-lang.org/reference/conditional-compilation.html ## A.49.4. Attribute *linting* & *diagnostic* @@ -291,6 +334,32 @@ Pada kode di atas, attribute name `allow` digunakan pada 3 tempat: Dengan penambahan 3 attribute di atas program akan tereksekusi tanpa warning. +Selain itu ada juga attribute `forbid`. + +Pada kode sebelumnya silahkan tambahkan kode berikut di bagian paling atas: +```rust +#![forbid(unsafe_code)] +//... +``` + +Lalu di main function nya tambahkan juga kode berikut: +```rust +fn main() { + //... + + #[allow(unsafe_code)] + unsafe{}; +} +``` +pada kode di atas, attribute `forbid` di gunakan pada 2 tempat: +- `#![forbid(unsafe_code)]` inner attribute, digunakan untuk semua crate tidak boleh menggunakan unsafe block (unsafe block akan dibahas di chapter: [Safe & Unsafe](#/wip/safe-unsafe)). +- `#[allow(unsafe_code)]` outer attribute, disini kita mencoba untuk meng**ignore** aturan `forbid`. + +dengan `forbid` kita bisa membuat kode yang melanggar aturan lint tersebut menjadi error dan tidak bisa di `allow` atau dengan kata lain `forbid` tidak bisa di **ignore**. + +Maka kode di atas akan menghasilkan error. + + ![Attribute](img/attribute-5.png) Ada beberapa attribute *key* yang bisa digunakan untuk override *lint* warning: @@ -299,7 +368,11 @@ Ada beberapa attribute *key* yang bisa digunakan untuk override *lint* warning: - `#[warn(lint_rule)]` untuk memunculkan warning untuk suatu *lint rule* yang *default*-nya tidak memunculkan warning.
List `lint_rule` bisa dilihat di https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html. -- `#[deny(lint_rule)]` atau `#[forbid(lint_rule)]` untuk melarang suatu *lint rule* yang *default*-nya adalah diperbolehkan.
List `lint_rule` bisa dilihat di https://doc.rust-lang.org/rustc/lints/listing/deny-by-default.html. +- `#[deny(lint_rule)]` untuk melarang suatu *lint rule* yang *default*-nya adalah diperbolehkan.
List `lint_rule` bisa dilihat di https://doc.rust-lang.org/rustc/lints/listing/deny-by-default.html. + +- `#[forbid(lint_rule)]` untuk melarang suatu *lint rule* yang *default*-nya adalah diperbolehkan **dan tidak bisa di `allow` lagi**. +> PERINGATAN! Tidak di rekomendasikan untuk menggunakan `forbid` dengan lint rule selain dari `unsafe_code`, karena akan menyebabkan masalah backward compatibility di beberapa library yang menggunakan macro misalnya. +> [Referensi](https://github.com/tokio-rs/tokio/issues/6448#issuecomment-2029480131). Selain 3 attribute di atas, ada juga beberapa attribute lainnya untuk keperluan *diagnostic*, di antaranya: From 0f8424cfce952674982ed7d96ff40ca8150b6736 Mon Sep 17 00:00:00 2001 From: novalagung Date: Mon, 6 May 2024 17:28:20 +0700 Subject: [PATCH 03/11] feat: update landing page title & lib --- docs/index.md | 2 +- examples | 2 +- src | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/index.md b/docs/index.md index d9c55ac2..d9a0442d 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,6 +1,6 @@ --- sidebar_position: 1 -title: Belajar Rust (Gratis!) +title: Tutorial Belajar Rust (Gratis!) sidebar_label: Dasar Pemrograman Rust --- diff --git a/examples b/examples index bf7ce6c9..e550dc08 160000 --- a/examples +++ b/examples @@ -1 +1 @@ -Subproject commit bf7ce6c9eb45fbb49cc747487bb992feb3ac3dcf +Subproject commit e550dc08169bc849ae83818ec48c6315fdaf0f47 diff --git a/src b/src index 2a7dabb1..ede70370 160000 --- a/src +++ b/src @@ -1 +1 @@ -Subproject commit 2a7dabb1c15b5178bbb6caa7683eb6b143368de7 +Subproject commit ede70370b9173b0174aeb4640371ea3590f53618 From 6f35c1f4f6449439fbb7d2accb71c755813ed1b1 Mon Sep 17 00:00:00 2001 From: novalagung Date: Mon, 6 May 2024 17:35:15 +0700 Subject: [PATCH 04/11] feat: revert src submodule --- src | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src b/src index ede70370..2a7dabb1 160000 --- a/src +++ b/src @@ -1 +1 @@ -Subproject commit ede70370b9173b0174aeb4640371ea3590f53618 +Subproject commit 2a7dabb1c15b5178bbb6caa7683eb6b143368de7 From 6bfc1e9fbec025b213b74713fa29111be9bc348d Mon Sep 17 00:00:00 2001 From: novalagung Date: Sat, 25 May 2024 21:44:32 +0700 Subject: [PATCH 05/11] feat: update base config --- src | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src b/src index 2a7dabb1..93cd1916 160000 --- a/src +++ b/src @@ -1 +1 @@ -Subproject commit 2a7dabb1c15b5178bbb6caa7683eb6b143368de7 +Subproject commit 93cd19161edf456f8295bbfc720c1a295c5f4e09 From 2c0f7ea75ec5456727706b98923bbb6fbcc77fd5 Mon Sep 17 00:00:00 2001 From: Noval Agung Prayogo Date: Thu, 30 May 2024 18:25:42 +0700 Subject: [PATCH 06/11] dcos: seo update --- docs/index.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/index.md b/docs/index.md index d9a0442d..9ec7d1ed 100644 --- a/docs/index.md +++ b/docs/index.md @@ -6,17 +6,17 @@ sidebar_label: Dasar Pemrograman Rust Rust adalah sebuah bahasa pemrograman *general purpose* yang fokus pada *performance*, *type safety*, dan *concurrency*. Bahasa ini diciptakan sebagai alternatif bahasa pemrograman yang berfokus pada hal-hal yang cukup *low-level* tapi tetap men-support fitur yang sifatnya *high-level*. -E-book Dasar Pemrograman Rust ini dibuat dengan harapan bisa menjadi alternatif referensi belajar Rust, disajikan dengan penyampaian yang cocok untuk pembaca di level *beginner*, dan gratis. Buku ini ada bukan untuk menggantikan *the book*, melainkan sebagai komplemen. +Website/ebook Dasar Pemrograman Rust ini dibuat dengan harapan bisa menjadi alternatif referensi belajar Rust, disajikan dengan penyampaian yang cocok untuk pembaca di level *beginner*, dan gratis. Buku ini ada bukan untuk menggantikan *the book*, melainkan sebagai komplemen. [Dokumentasi *official* Rust](https://www.rust-lang.org/learn) sangat lengkap, dan aktif di-update oleh komunitas. Jika pembaca sudah memiliki banyak pengalaman dalam programming, sudah paham mengenai system programming seperti C atau C++, maka penulis sangat anjurkan untuk langsung menggunakan [*the book*](https://www.rust-lang.org/learn) sebagai referensi belajar. -Versi e-book: **v1.0.20231224**, dan versi [Rust 1.65.0](https://blog.rust-lang.org/2022/11/03/Rust-1.65.0.html). +Versi website/ebook: **v1.0.20231224**, dan versi [Rust 1.65.0](https://blog.rust-lang.org/2022/11/03/Rust-1.65.0.html). -> E-book ini aktif dalam pengembangan, kami akan tambah terus konten-kontennya. Silakan cek di [Github repo](https://github.com/novalagung/dasarpemrogramanrust) kami mengenai progress development e-book. +> Website/ebook ini aktif dalam pengembangan, kami akan tambah terus konten-kontennya. Silakan cek di [Github repo](https://github.com/novalagung/dasarpemrogramanrust) kami mengenai progress development e-book. ## Download Ebook File (pdf) -Ebook ini bisa di-download dalam bentuk file, silakan gunakan link berikut: +Versi ebook bisa di-download dalam bentuk file di link berikut: > [Dasar Pemrograman Rust.pdf](https://github.com/novalagung/dasarpemrogramanrust/raw/ebooks/dasarpemrogramanrust.pdf?v=v1.0.20231011) @@ -26,11 +26,11 @@ Source code contoh program bisa diunduh di [github.com/novalagung/dasarpemrogram ## Kontribusi -Ebook ini merupakan project open source, teruntuk siapapun yang ingin berkontribusi silakan langsung saja cek [github.com/novalagung/dasarpemrogramanrust](https://github.com/novalagung/dasarpemrogramanrust). Cek juga [halaman kontributor](https://dasarpemrogramanrust.novalagung.com/CONTRIBUTING) untuk melihat list kontributor. +Website/ebook ini merupakan project open source, teruntuk siapapun yang ingin berkontribusi silakan langsung saja cek [github.com/novalagung/dasarpemrogramanrust](https://github.com/novalagung/dasarpemrogramanrust). Cek juga [halaman kontributor](https://dasarpemrogramanrust.novalagung.com/CONTRIBUTING) untuk melihat list kontributor. ## Lisensi dan Status FOSSA -Ebook Dasar Pemrograman Rust gratis untuk disebarluaskan secara bebas, baik untuk komersil maupun tidak, dengan catatan harus disertakan credit sumber aslinya (yaitu Dasar Pemrograman Rust atau novalagung) dan tidak mengubah lisensi aslinya (yaitu CC BY-SA 4.0). Lebih jelasnya silakan cek halaman [lisensi dan distribusi konten](/LICENSE). +Website/ebook Dasar Pemrograman Rust gratis untuk disebarluaskan secara bebas, baik untuk komersil maupun tidak, dengan catatan harus disertakan credit sumber aslinya (yaitu Dasar Pemrograman Rust atau novalagung) dan tidak mengubah lisensi aslinya (yaitu CC BY-SA 4.0). Lebih jelasnya silakan cek halaman [lisensi dan distribusi konten](/LICENSE). [![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fnovalagung%2Fdasarpemrogramanrust.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fnovalagung%2Fdasarpemrogramanrust?ref=badge_large) From dd01f4e06c9bc4c6d72716706bc694a216b122f1 Mon Sep 17 00:00:00 2001 From: Noval Agung Prayogo Date: Tue, 4 Jun 2024 19:10:09 +0700 Subject: [PATCH 07/11] docs: update readme --- docs/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/index.md b/docs/index.md index 9ec7d1ed..4abcabf3 100644 --- a/docs/index.md +++ b/docs/index.md @@ -6,7 +6,7 @@ sidebar_label: Dasar Pemrograman Rust Rust adalah sebuah bahasa pemrograman *general purpose* yang fokus pada *performance*, *type safety*, dan *concurrency*. Bahasa ini diciptakan sebagai alternatif bahasa pemrograman yang berfokus pada hal-hal yang cukup *low-level* tapi tetap men-support fitur yang sifatnya *high-level*. -Website/ebook Dasar Pemrograman Rust ini dibuat dengan harapan bisa menjadi alternatif referensi belajar Rust, disajikan dengan penyampaian yang cocok untuk pembaca di level *beginner*, dan gratis. Buku ini ada bukan untuk menggantikan *the book*, melainkan sebagai komplemen. +Website/ebook tutorial Dasar Pemrograman Rust ini dibuat dengan harapan bisa menjadi alternatif referensi belajar Rust, disajikan dengan penyampaian yang cocok untuk pembaca di level *beginner*, dan gratis. Buku ini ada bukan untuk menggantikan *the book*, melainkan sebagai komplemen. [Dokumentasi *official* Rust](https://www.rust-lang.org/learn) sangat lengkap, dan aktif di-update oleh komunitas. Jika pembaca sudah memiliki banyak pengalaman dalam programming, sudah paham mengenai system programming seperti C atau C++, maka penulis sangat anjurkan untuk langsung menggunakan [*the book*](https://www.rust-lang.org/learn) sebagai referensi belajar. @@ -30,7 +30,7 @@ Website/ebook ini merupakan project open source, teruntuk siapapun yang ingin be ## Lisensi dan Status FOSSA -Website/ebook Dasar Pemrograman Rust gratis untuk disebarluaskan secara bebas, baik untuk komersil maupun tidak, dengan catatan harus disertakan credit sumber aslinya (yaitu Dasar Pemrograman Rust atau novalagung) dan tidak mengubah lisensi aslinya (yaitu CC BY-SA 4.0). Lebih jelasnya silakan cek halaman [lisensi dan distribusi konten](/LICENSE). +Website/ebook tutorial Dasar Pemrograman Rust gratis untuk disebarluaskan secara bebas, baik untuk komersil maupun tidak, dengan catatan harus disertakan credit sumber aslinya (yaitu Dasar Pemrograman Rust atau novalagung) dan tidak mengubah lisensi aslinya (yaitu CC BY-SA 4.0). Lebih jelasnya silakan cek halaman [lisensi dan distribusi konten](/LICENSE). [![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fnovalagung%2Fdasarpemrogramanrust.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fnovalagung%2Fdasarpemrogramanrust?ref=badge_large) From 80ea9a663d268fbec92e9637885f5cb544f6db9b Mon Sep 17 00:00:00 2001 From: novalagung Date: Fri, 19 Jul 2024 13:23:50 +0700 Subject: [PATCH 08/11] refactor: improve explanation about macro cfg() and debug_assertions config --- docs/basic/attributes.md | 129 +++++++++++++++++++++------------ docs/basic/img/attribute-4.png | Bin 19241 -> 9610 bytes docs/basic/img/attribute-5.png | Bin 7925 -> 19321 bytes docs/basic/img/attribute-6.png | Bin 47324 -> 19241 bytes docs/basic/img/attribute-7.png | Bin 9336 -> 7925 bytes docs/basic/img/attribute-8.png | Bin 0 -> 47324 bytes docs/basic/img/attribute-9.png | Bin 0 -> 9336 bytes 7 files changed, 81 insertions(+), 48 deletions(-) create mode 100644 docs/basic/img/attribute-8.png create mode 100644 docs/basic/img/attribute-9.png diff --git a/docs/basic/attributes.md b/docs/basic/attributes.md index 43107790..b49900e3 100644 --- a/docs/basic/attributes.md +++ b/docs/basic/attributes.md @@ -22,6 +22,8 @@ Outer attribute dituliskan tepat sebelum target (crate, module, module item, ata - `#[attribute = "value"]` - `#[attribute(key = "value")]` - `#[attribute(value)]` +- `#[attribute(not(key = "value"))]` untuk operasi **NOT** +- `#[attribute(not(value))]` untuk operasi **NOT** Contoh penerapan: @@ -40,6 +42,8 @@ Sedikit berbeda dengan inner attribute, penulisannya berada di dalam target (cra - `#![attribute = "value"]` - `#![attribute(key = "value")]` - `#![attribute(value)]` +- `#![attribute(not(key = "value"))]` untuk operasi **NOT** +- `#![attribute(not(value))]` untuk operasi **NOT** Rust mengenal beberapa jenis attributes, dan kita akan membahasnya satu per satu. @@ -163,7 +167,7 @@ Bisa dilihat, hasilnya program tereksekusi tanpa error. Enum `Superhero` kini me ## A.49.3. Attribute `cfg` / *configuration* -Attribute `cfg` digunakan untuk menentukan beberapa konfigurasi seperti conditional compilation atau target arsitekture hardware/prosesor. +Attribute `cfg` digunakan untuk operasi-opearsi yang berhubungan dengan target arsitekture hardware/prosesor, misalnya seperti conditional compilation ketika OS adalah linux, dan lainnya. Salah satu contoh penerapannya bisa dilihat pada kode berikut. Ada 2 buah module yang namanya sama persis, perbedaannya adalah satu didefinisikan khusus untuk platform `linux`, dan satunya lagi untuk platform `windows`. Hal seperti ini bisa dilakukan menggunakan attribute `cfg` dengan key `target_os`. @@ -206,49 +210,6 @@ fn main() { } ``` -Selain itu, kita juga bisa menggunakannya untuk conditional compilation based on profile. - -Mungkin di bahasa pemrograman lain kita biasa mengunakan `if` condition dan `ENV` environment variable untuk menjalankan code tertentu saat app berjalan di environment production atau local. - -Di rust, kita bisa menggunakan sekenario ini pada compile time!. - -Pada kode sebelumnya coba tambahkan kode berikut pada main function: -```rust -fn main() { - // .... - if cfg!(debug_assertions) { - println!("Debugging....") - } else { - println!("Release....") - } - - #[cfg(debug_assertions)] - { - println!("Simulate Load env file..."); - } - - - #[cfg(not(debug_assertions))] - { - println!("🦀") - } - -} -``` -Jika Kode di atas di jalankan dengan `cargo run` maka akan menghasilkan output: -``` -Debugging.... -Simulate Load env file... -``` - -By default cargo run menggunakan profile `debug` maka output tersebut lah yang akan muncul. - -Sebaliknya jika kita menggunakan command `cargo run --release` maka cargo akan menggunakan profile `release`. -``` -Release.... -🦀 -``` - Ada beberapa key yang tersedia pada attribute `cfg`, di antaranya: ### â—‰ Configuration `target_os` @@ -289,6 +250,78 @@ Opsi value yang tersedia: - `arm` - `aarch64` +### â—‰ Macro `cfg!()` dan conditional compilation + +Attribute `cfg` juga tersedia versi macro-nya, yaitu `cfg!()`. Macro ini kegunaannya sama seperti attribute `cfg`, perbedaannya macro `cfg!()` mengembalikan nilai boolean, yang darinya bisa dikombinasikan dengan seleksi kondisi untuk keperluan conditional compilation. Contoh penggunaan macro `cfg!()`: + +```rust +fn main() { + #[cfg(target_os = "linux")] + { + println!("hello linux. from attribute cfg") + } + + #[cfg(target_os = "windows")] + { + println!("hello windows. from attribute cfg") + } + + if cfg!(target_os = "linux") { + println!("hello linux. from macro cfg!()"); + } else if cfg!(target_os = "windows") { + println!("hello windows. from macro cfg!()"); + } +} +``` + +Penjelasan: + +- Kode block `#[cfg(target_os = "linux")]` hanya dieksekusi ketika program dijalankan di Linux. +- Kode block `#[cfg(target_os = "windows")]` hanya dieksekusi ketika program dijalankan di Windows. +- Seleksi kondisi `cfg!(target_os = ...)` merupakan alternatif penulisan 2 kode sebelumnya yang digabung menjadi 1 rantai seleksi kondisi. + - Kondisi `cfg!(target_os = "linux")` terpenuhi ketika program dijalankan di Linux + - Kondisi `cfg!(target_os = "windows")` terpenuhi ketika program dijalankan di Windows + +Output program ketika dijalankan di komputer penulis yang menggunakan Windows: + +![Attribute](img/attribute-4.png) + +### â—‰ Configuration `debug_assertions` + +By default, Rust menggunakan profil kompilasi **debug** saat eksekusi command `cargo run`. Di kode program, penanda apakah profil kompilasi debug digunakan atau tidak bisa dilihat dari nilai konfigurasi `#[cfg(debug_assertions)]` via attribute, dan `cfg!(debug_assertions)` via macro. + +Nilai `cfg!(debug_assertions)` selalu bernilai `true` kecuali command yang digunakan saat eksekusi program adalah `cargo run --release`. Flag `--release` saat eksekusi program membuat nilai `debug_assertions` menjadi `false`. + +Contoh penerapan: + +```rust +fn main() { + #[cfg(debug_assertions)] + { + println!("debug mode. from attribute cfg") + } + + #[cfg(not(debug_assertions))] + { + println!("release mode. from attribute cfg") + } + + if cfg!(debug_assertions) { + println!("debug mode. from macro cfg!()"); + } else { + println!("release mode. from macro cfg!()"); + } +} +``` + +Output eksekusi program menggunakan command `cargo run` vs `cargo run --release`. + +![Attribute](img/attribute-5.png) + +Pada profil release, kode program dikompilasi sekaligus dioptimisasi. Penggunaan profil ini dianjurkan untuk distribusi production binary. + +> Di beberapa bahasa pemrograman lain deteksi profile dilakukan mengunakan kombinasi keyword `if` dan nilai environment variable (`ENV`). Dari situ bisa dilihat apakah environment yang digunakan adalah production, staging, atau local. + ### â—‰ Other configuration Ada beberapa key konfigurasi lainnya yang tersedia. Lebih detailnya silakan lihat di https://doc.rust-lang.org/reference/conditional-compilation.html @@ -299,7 +332,7 @@ Ada beberapa attribute name yang bisa digunakan untuk meng-override *default lin Contoh kasus yang berhubungan dengan *linting* bisa dilihat pada kode berikut. -![Attribute](img/attribute-4.png) +![Attribute](img/attribute-6.png) Kode di atas tidak menghasilkan error. Kode akan dieksekusi tanpa error. Namun ada 3 buah warning yang muncul karena beberapa baris kode tidak digunakan atau sia-sia. @@ -360,7 +393,7 @@ dengan `forbid` kita bisa membuat kode yang melanggar aturan lint tersebut menja Maka kode di atas akan menghasilkan error. -![Attribute](img/attribute-5.png) +![Attribute](img/attribute-7.png) Ada beberapa attribute *key* yang bisa digunakan untuk override *lint* warning: @@ -385,7 +418,7 @@ Ada sebuah attribute bernama `non_exhaustive` gunanya untuk mem-*bypass* error y Salah satu contoh error yang dimaksud bisa dilihat pada kode berikut. Error ini muncul karena enum `Superhero::Superhero` tidak ter-cover dalam pattern matching. -![Attribute](img/attribute-6.png) +![Attribute](img/attribute-8.png) Solusi untuk mengatasi error di atas bisa dengan cukup menambahkan case kondisi yang belum ter-cover: @@ -491,7 +524,7 @@ Pada kode di atas bisa dilihat, module `util1` dan `util2` patuh mengikuti atura Jialankan program, harusnya tidak ada error. -![Attribute](img/attribute-7.png) +![Attribute](img/attribute-9.png) ## A.49.7. Attribute *testing* diff --git a/docs/basic/img/attribute-4.png b/docs/basic/img/attribute-4.png index c51f41a75d1fde85b8ce868abc63cb159ac9c233..d48586e040796f479780ffe44975e256153dccf7 100644 GIT binary patch delta 8740 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⋙*3t-=6EU@%{NH{W#>bMheSj ztvFOM=x*%ENYn5&$ zHOm$;7?S0wOhc)!O2Ut0!{>6ARHm0lDUS}*@V)DB zlPNwLTRZ3j0JGr|bNP0<*4ROCx1%ya-E4yLw2b<04W|VamE{t%arZIHjND`LrE9Bh z+O8+t*Ep@k&HZ7NnAE#_$B;HW^{)a?aWIc8rgfA_s*m(!@C;<1mMLyKVrv{`@@n1Z zc39)-&?U{690-8s*=P5o=|s6D$yGRb%{EEJ=&+`NHSU|(Z5h+1s}$n4>}bzYYG9WQ zC&ql~3ds!|)mn$onB_(D>RY$7BnF@ii{Z@i=jX$!Cd@NGa1QGA+dd4|k`Zo)q7+ND zM>s&4y*1)SZ>_oeHU5qHNy;7Utc6OgzWMcBWh)hLR%|Dq-xxIBJM1j2jX&(xwWsIF zuX1*}xiXB`25zWgSc{Vl#YIvN#G1|BuL#SwoY{c)^G)&16O1&|KGv0r_QxMv5?}$V zijbw9nt~imp#3pwEkNo<2P@9*I=FksSbwZzdbsGhkCZvU&8n>dCWPwVlQMYJmnSvf zZ#+NSYGvcek*%Z-m)*&V2<0fCwb=NsnGVJS@3N(kfzByuIF;irYsO)q)pCT}NdF8jyjt=^K1?iq9OE z*C%@Jm@lhQY-LhUxU)pe;DV&z+SOxOs{wuUZK$KIZ0G5*=_w6c%>|;r<<*CR4L0YN z$ZlKrk-a;OOZBjujl@oeuyS802B0veCNQjW>=J3!#;SCEy4La-tt=%Pp2+%nYxJI9 zYk1B3K#MPQkS#Bz2mOl+ADKJ*3oHhANgwH{vs^50^+nZv>n(l=IS4g$Cu1k+|P3!n`Vm@>6Wg}w`B99KuBbNB} z7)Dt#n*8=kA36F3SXTUAq4-)U*R10^CzJMVGf!6Do;X|c7%6Fz(QWhXWQKTT zG|kf~1Ry+@kmLD7tM1hY>%*fXr4rSiUuRE`C!S(`Z;+7m=@L{_RN5Y|lCq_L(1{qz zroohlwB+H4R}thD6^Z4*2dB!etnIxG+V^PGsaVzu*MkS zH&d|pRv3dhW!{-} zr?2CgSffQMv0>gB=C+RLZJLV4g-^{eo+pT???iE_8epuGil-_eiggNtvw5w}T>{hh&xYU(T3Yp9+=*LfD>RR<_ zvfE8v!-&u}aW#`kW~F?z@2hQPe&}#p+rE8J6uv8KC@kDR-ROcEl9QFqUJDYX5Xgz) z_Y*i(%h>W}j%VGrFXC2K=L|HS(o~_)poqxQvbr@SK2sgP`h7_#wK<-UP2S+2b7o6` zq7V`nQ}d3QoW+xQGwE%amLk_wU4r;l*45ymh&aybiV$eIcKQA#EY~jA1B-aEq|ePi z2aTK^P#((L_N(wxn#({4^u;WK8fETL8C0g?1T)g5zAMDw>i1 zFY^BTI-<`d$=viG3Yj92gTE*3iBHafmKcK<@Ocax4g2g$;)herS=`Ln#p7@BY8v`@ z)*Q8Ye_dP>fuSlWZimN+Ll@v%cY~#H9h|kdQBzY}zLqUtt%c0}pQwUyxgEHIV^(uU zaLSLBS!y3F1(3kOcdu!m3k?->s>@za#e84te*@Yn0bqjWafnfaHo}nEoK<^#UHZkR zK#q*oTvKrt`5-A>dpvbP`W>Pt0F-5=uD**5Z@`rq6XOx_%eW?w4Wgp_bYzeCd|hg> zSNDs27h61q_|qOnO`G!qZJ;p}02)QanE2kx(a}*>W+vy;%`XpaK0dxW%Qa5dt3#qR zlm%;agf9o;@OHD_ffxqOY%s4Rr<_JeR7y-U{jkhyg?54kZ+TXm4|g$Y4y0d)>^O^> zP^@G+$XH|9*WTA7G+c;5u2|m{#BJ229rmZe)tYc|nL69= z*-InkgYEtb55!Yz2){WeZOy&#f|)QDRo~)fvLmJlSntqv`AKa(npug>QMB4>nrV5i zplkZP6{(|8IYssD0Ouw`voBmeL$A9-d7FOs5%WEY&yNjliR@a?TJeIN;K}M%P z`I$qfSbo0OH=R6*lT2H_l6Ogpc=~b5)amhqr&wiJ3#}i{OA48;UZPQ%&YM)Y z>+hI*2=f2S$YAfj%DwmhQIBd{khUUx(;)vS#1CKKwP?sUu~T-jndk2Lg`7*P8(#UV zT3c?pVgji$Dlc~K)#13N+I$ppVz1hWhfo`BTd_#V%YD#SF9EwT4O=~>mJtV0fiATIaPpF`-Qg~As zX6?dQF&+;9;QzFSJ+kv6XeaF1IdRIldBmf5#K?##dT#2%> zsUWgQDQH=b>*m}Yie4i)09IBjF~?ODD?4u@I0#tlEoin6wYQH&N|;l-P9rf5CsqR* zB=#U6)Sw`1VTEh1m`NMo1t3lh;VG|KKzf}Izs<-vSQhBU_-?xr;@i{KFNL)Jo~iBj zpacS<@6U~c*cB@z04=EgnttTo#gw~!){CCXmh0Iriq6xkXU*eS#WDB#HTALm;jJj% zv0(2lf*za39QEcOgNhgyd>1hzVz%*}A5{xxOs+(~7ToQZn^qF=Bb$E2Bq>5j%T)e| z0Z;FJvU#WqSu0dPie+9M;T_^Lj}A-y>t@by0Z}>u10EP<6*kEB%lM^j!LVQ`2mqsH z$4J@Qbv*6yoSuIsoxO_R$cQ#(9`*P`pd-5jX}IMM%f&^x(TSUoM@RUk-0;ItLgH%m z_PoTegXoBpJh`RU7$Ft{$QybSUyQ~}kekg#%HhsM# z;D(of;S33=Kj$=$^xKBki&Q#|u$we&xeeMw3$93R-P z{#-mjzPQ~WI+j06l6lN#--AE|H$SjR&Ox#__~S<>Cs*_(3(!Vb);U_@7zbM6#`TsP!pI;;&wMlv$3mXxz%P88p@n7g&{*mCBnNfg#y%fG-{%A1PjY<%bB5 z?lgL!-rq(l4_$<_a<3Ptk`ol-bgxOKI^&e=)PS0*0|jd!0WQ)P)%K zJ9A3@UM6>Ao*tD*OPuC0o%fI=PpogwJ+ONUAb__2t-^c5R%@$x!j9KIj}A37H+?%{7Luk2Z1C`B~;V^?w%aC zFrqOZNZS`c{a2!9+WYE+V&WNj~$)f>Fnd>#ocn@_O zI((0vEFVYJ4sWmZKNB7Y-8oD@Uamj6`70iaOl<6Ab>$EP04n{1o88T=G!9JWJZ>1W z)T?yV31rs`kGNk&;TG~Y>OT{WDA~r{yB5qG>dP8(k-sX^Y%as)0>`779L39M*NgJj zzM-~`PKdJ1g$^+zjhO*ATQMTx{O-Y)200}mQk?39?=>&F(?pATp?*R7W5OUs`By@@ zd;G*nV+&IJu0Y@Mrg)hnOLsx7cVhe#`X^^u3Sp+&Ag||QWDBNqo^e%Ln>^TdOLT7c zEMWiUlF%qd^`4}N;e!Cp4*gEY>@V*9>Ej2p9rz?$Wn1i?>OLu0g?%gpgM zSL`%P=sF8+Zec_Kx4=N^2uEASQ*4?$%c2wrgB1!qYdahA?h2|cY6SeR$ecqCgX;rJowp{-f>Vsln-J!~)$?1M? zJK@{yqh^RCIVkl4^f&KHI>!xQ67+h>%RorgMC#XB^4X|~MO|MN8!{LHlU{JH$Zy!S(Pauf*f{TRO)OG0_Ul*(nS=hnAM z-_U4%`?Wzt4UM%ZNq{5M(G}I*)R~OP$Y7`>z^Yco0$HA^{Y$4ize#_i*$txR<}img z1?P^wW(H~(8pt;~Rw2|ng(@NcIz*wZ6HeEgu8Gjf3-S@#-tAiihZr=M{6GwSg-mU{wfg)3}|VHE_A9g@zm z;I%o;fH9T@$JaUnb~mrASW1ioR@L?H|qq!-9phvwebBI z2Y<7-E#jw_2t-B&|05M*oU?^nF*PB>ResCy`mi3nbIH(x*(U1vauPxue$jnAJg6x! zSu1Pk*7yfk$uz0-9$`S~&!0a_SWk!sQk(B=7H6EreSdy7(i!%4tuidA?{f_DlSgZW z4GToU{$g+VBbSU*T7s6~?;fO82XY$6Y{^#Zhi$WLhRWB#QE;ODsix# z9yxXB$ba}z9q#Uac(e;(Ez?40!c8x0`Qp5k@XTp`k3wvhcDHxiBuLnwvRQ#cpwASP z&-U`v;#vr zm*fDqhK3k#=U8{_|6?*ZVk{6BtXNAI9SC~YJ6nL z`~Z0d^4-_Y5AnZ_j*7GBQ~OM#7+AB%%1<;?2yWZU;DkN?)aAufEqq}G_)N6YWrTbd zI+o{#5?!Bn$YS7Tb#q)?p4LP-@=lkd8<_>n9>~|yw!1;hmm|s#`SdtnYqR^-@;Y9TnMk8?F z^1QRF{h)?qrt%&K=j{?4%*gqL9cWofimgAl;7LfJ_ChZ&FWEU#BBQDRLQ1oZ;RNKl z((SR712aRzgj5e|>ayq&&D=7sv*m`RO}zP(um_R6GN{0VJAuQUs(A+CpMS`CvQmEc zQi6eU`feEOXXKPUq6Syx24i#pofQ0bRptQWM1BQwCPV;un?&(lXM>t6x`H-lAbGj$ z^alZ5;M(orASQe2_;fTZ;CK?dzrVk@qz2*D@~DR|6(7gkA9sMc+}Szb(^H$9n+or7 zr0StdGPdeL2iV!$b2&*v0PLDLXOKYr@W9<28a>@H6gMB#$(b&4MCul9M4u_im*3|$ z7D`HW4Gql-kWGz^V1krKe;aYH%-E8vAuFq@un-vlDaDJ+%hyQcs7pe0nmkpdAsF8! z&FPhC8n>T$03dy-_ceC?JQfSKapCc|;{$!Ftz`xG9v(l*v{8eqxW}{b;0(`gHw+nF z^3&TRKw9NCv!rBY)x$@>i2OdtT-3b`NlS(eDkSc%U(*uYlfoyaXhDnCYY8*>2 z`-roTRVYoGDIifz7~pch+%USjI?5jo0OboqA8?cuW*X|}8|&xami@qHrzisbOqvl; zUQRPRmnNKzucF!NW`Dd)HE>w~;noTdC>OI(&f;b^@t@16_&_N4FHa0)YK(s)=DN9( zs9nmqpO#8K2&)Y)N20qk%GTF@Q2=Etn*oNOiK*+t#Ke;O?VUZdbp*JXi0_`^`BOZv z4vn|B$I#Ol2@zJu+l$I}78X?Aj)W%Az*!htqU6ioF){|fsVd9n)vkXD-G zm4EtkE^0VxN9e)s++5o$*s6y)u&trV+22f|(jk>L`m{^pnOQNu@<>KPlD2#Q0cmo) zoz4EU>yhg73Rt=jEnFu}M|TXm+7FzOU*bH;njD{HT()%5;of|PgfbKf`^d2fiQuwb zbikz}_ZIHykb2*WnXc7)<~uF2QWy?K=8o3r4C8FY!qClwgGeb6wqoQ74%X5|&QNw4 zthgI1xO&+<6M^A;i|>u!t{P^r>r_k8<)*s_l%fo%k=a&O&?+<wuJF-vpc z0f8?zeHF;gN{_7pnuX#ak3kBs+~ArZT#C~kbRd4j5khK#TS*v7 z`}X$XuIF0`UbbiFWs`j9PHBF#ve!}Py&+RtGn!8^jZTtFlee8?;i`MP4^P{Dp_QV) zS(MBk3k8+quHl}4OfFS3W8SqzHRx)^SlpK(3$~es7Gcb8!!#O@KC(-8^k80MDmFJoSpJNY}ccspr8=CqePixQjX*M&zdeD)$ymFAfq!AnQ{0O^7UF{kF#mg z-2pG>Q==3}IN7;I8qWgjZPYZ6^;>%E52HeGC)M6C5FI;NkF$Yd=E&f+{GrGfYA7+OYytj6?I*>TUb9I~I`^ywIIIgXEF@O9Me^M$YDl?! zS!Lx1E(|nRxy^M*n7$>J5MQ2r_Lj(qy@eS%#Ip+Cve}kTx`L^p3v%eX3PphG4e+1{ zG0iNxZL%>M(_p{KX$?W*XhR|ZHrq(6(0`yZn^B+u@3TC^cGs`$A^DK>+-{~6p#OZ% z;tzmsxP=kYb7+k7d$gSo5>admfxsf#y=ZJTw%#Z6Ny16~qsJ4H>$RQV(y2qNUo;ez z-l4t$06!KA#Cr>i6ux?Hh<&#OJ^hn-kOfdn!P{DD8#ZiTO50OVW- z8AL5bb+5&b11Fx^_N4Dst{ptDaI3@QKBp(dLwSY%&^UrQyYjAIRt@qwf?UXuT78+K zXm*nQl*{O>ZZD;(xj`&9?w0Hc)8N3{X^4?4b5r&FHl;~@7FQ7ensw#~?ra~T)M{9p zoR`S7crB-kn_mK~V8E2R2@F{ z50r9EdiKOo@~mKXg_(kwpYRJyVhuusIrNySG5&8RGP05#TM0#%aa9TEl1im(6%>@_ z&eAJhb{X0V7F-V9a$Qj-Mc;KnKSGm4q;`1&3H#{mc!N!V@ED7hIpZU?gn!0NXSFZc zZ#L=By-lSrlCM!}!&VZZNJa;eWVJFU$*Zhbh^=Ty((-8D{pHn;i(5;QQnlFi5iI24 zKc>=m+n;mJ*aNmC`RmJOW;Mx7UB11ZWS-h1saogu85|sbmD8XSm?-=wC9LQVv~yNM zJ`iL*s7)SWCiQG02e%%P5H3>lkIG)4Krm3CSgjTYK^bkSC^L)CBQ6~J0qLWCTLtJn z9(;`)0Py7RA%n?S{Vn3{iQ_5%9XR`0WOAY}NCbY(n@(#EF3- zHn&xDeJXXolqgAQMG!{EtFeMx5drDGPmBqiVyC;!&4h21TXtx!35FtA)YMU;=&+*G5;pHYXW3MKvIg#Fy||;`EX@fKQynqw6`T;lw;(Z`Rwsdbf@7h5nOVI=j1Q!PgY8;f)~-s_a-oPA$JgE9Y}Za_ zYLj0xQnM@-2NysP#YjI-S^WO-qh1aI@Ny*~a;7X*3Ljq*Ia(!zsAl+F6N_%G&`r+x1^-z09E=(rQ7d(e99Jz|&pULo5D zUSW6nSiIdoKH{(5Mp|AsK}8)OfNo%gXdf}hG1yOD%}^cZ6^QQjse*Ht2I7Q+_Q>Rk zc0NVWCC7mj4P^W{1h#^`vhUAEqu-o}jh0RUIOz4vXcjaJnz?qs<(G4?_M8(*53X=& zALV$&*S8PgzP^OkCe4NQ?FC+Nv?7tTsjRC%%`TaI%@@2MD6&}gV~$3jOHgH3eB4GL zfZabW?|CIZIj|BkVB{YoTfF4++-I}mhFx}3PSSsqZ-a~o{M=vml`sv~u>aqAhQEv5 zkDM@OLjt7844)`kJj#zK*VdY~Yb$Of6c$&veu&~zv-dupt!6_O5RV1K=g5(s6jEP5 z+KsQEV!Kz9fCXwJizxJB5s0bROMzKR2N0AhX=VYZZux^^)z`c9#5y`mYAA5LM#Yn* zv3~AW;^M=TYUC&-$@(T&mSLYlP_BdVn$1nIyA3;!Z zq@)wq;NQ*uAuTiX?W^aK^vUUv<7r^(@5(Iv<|yT)4A3Oh-2PJO1%Mf2*C-drk$?b% z)K|d61KP7_8JyTGdB#r{hDR8$3sVuFoX=cq(;0?Pz6?BwRZ!adlkxF6%@3Z}ZOH-4 z5ZvbzUhv1puGeH8Ap!5TX2F?j#zv_m@e%5uthxZFAprcPv_-J+o9DmAa7ft(zb?suhohCkYmDHdI7 zaxBv!fq6skNso-21_9WQG#7l~hueJZ=&F$1t2g^Q-0&=5kw=4mY&DLt;hBs>$QSFW zD!n)ze_yNmJ)3wPG!TEd_YE45e$I#dppldsY=~8`xr`zkUptN0?e5Aa?RlwaFK*?# z)0JIRSE%c)tK$t(SXAV1jeNzA0;~tJAp+|HcN0UXv;@IP7?Ca#jP=3HrJ_r&HTVH! zy?r=322iI(MYo&oavn>~-{(s|bER3bheYui^;?;L)DP*l%f&*aJr;1CnSIA=1RR;D z7*P*hyXPsQYnyNZli9!=AeLk8rck-=rl%vZiRRL~{-*Vi`|WAK{8Ub4CiFA3e5 zNZOmsLn(~M_CDziV;F``1kuVRIdy)ggubKY;0sR9AMr8gNwGH3BH zXVUBg^yeRv!SG%cF?ft@P4*Wb1IdvO-u{%b!u5<}fVSF)&+3o+b5IxEsovcy)8VC@ zZKJgs(dpj;j^z#w`cri3)Py8<0#JDT{$eS0)Z~U?>RPw|S>smny93pq3g+|IL zSE!tTeMKEqy~bE|%O8B?4+i(`O-fdJhIz#+%{rwkac&+xrb&0zSh5eME3ky zeSoL_0*d|_cRLLrZLJ$Sm>(p(+Fz!bqJY@@M@E_n%&9}0A;HgMqx{r7Zr|V2?|(p) zp(700Xbu&_4ugX>TX7ZIegBSV5BDog6uDDz+ShNc!2DBt{O?IrktE2(^Nw=@gi+hA)U^ zn#P-^pxM-k*SN*X)UUV{_nZ7~hjUZOC7&;tUbpM6)&zZXSh(&rY54tTCk@+2-g)th zFJ^bqyQcC%e=$#b;^tO|xo7r+?+|P?>L4^1*2UqnJqk@#>M0GWcN4x>dyQxU-NkS^ zu+TDxwTVZt`>B`dCRid$ob2zeZZnFm20k*U#RWQK!qmoJ>q-AIouZIC`@8WUcjY6U%H|9aEf8d|k`!mb1j&klRsnZFSj7v11wl8j&6xf;;>rz~|pEa-x08rnSRnliA)q zr7uQ<+`CjkB>tcZ<8dl1y-;M~{z?|iSH8zRdb3w54lZZYeeh(J(4E~h+17ePC_NGc@Kp(NjsSme z3d@KG3_r=AdEJnG{mW>a?Y>s*<~F`D-u@fKO1lzq?qoN<$%B5=_J>FCR>YWDy~h(5 zJvBS%uM9j`c+nu1Mz>~FJ5OgggD*+{7eX%={fxfaagaY|XzgOcPGS$waq}aAN(l-) z%BC0Z@LuD&g_o@9C(G$IRTP(gBnDC5B*}zuT7Q7FwnO^8f0d6{*O3w{S3ii`h`?h5 zcFsln#;tKbEI_`0cDlSIXNRcE-yq8xV|YZ66JC`9_^b*&KB(l{qb+Xq7ayQ;LLlTf z-D;x_?m@k?p~*@^L`>`{h(vk&an#>0wMF%YaxYb`sfg`hc3iOl3T{ke58TvX&4{vx zfA>ZD493;e;w@E(@f3vD{nkWTUQZR-+GBvkyVkv9k7(;sc4}9baT5w5#}ouKGMUiS znB_W$OP5buYn=AtuH#;Q4T3D(ZD}gw z$P4F#7oNd?9t7ex@)@#*A4&Qf$4}8)D11@K5!gt4By4(?DBTRm|Dz2@oFcDPr+m(OcO-_h-Bu}GSNX>^~GLdm~;%GCZL zGj0w9;An_iA&P#Y2~i;$b2!aSQ(MVILnjfq@^CR~Z_7q5mWv2{9lbnpnMrut#6s#| ztKnP`B?XLlLjVl6Lp$M!(4o|1YzS-hPh^i7;KJ&Q7`#Dx!zKlb;`kmPd_2 z{gbwiZ=?}aFHmZ;#gapd=0)b8tTMY>vHvVLQ3Kz}*soRi{{6cW%lH)`&x431m*0js z(-I{)_pH{yh#>ayokXcgpq+j3Il!7U$u2=g$*QyQLA=J_4j2inRxbGIUvJA<~bpX z#orv;wDW`s><oR)li z!{0!0i&{A2pi1~7JvT1TCCqyf;pWAyPi#c10$!c_qBNDYkf-sq!HP+rT0NkxLm2*x1_1yw_QMZL(}Jj|**>qaoPXL+nWg96eE_^b5D$olV7$I^KaUC+?OE)^ zE@#O5gbqz;>Nr1{BdUbUZL5p%kD5XRU1NQ?hKt>Ie7}(iPVgclU1nhNRA_#et?<(_ zk*>BLJAE?Lg(5*qY|tOieJ_GgcDx`R{=UYHj9pl{jf!-C4NL3^ug93lZ+7z?;MH{i za<+95M%*76VkZ<+<9M4zS87Eq6j{#(CeipfWO@dSeAB=@d}p5nkK%+xc)@VuetznC z>!kxvt8Cu~B-sgKV65OE{p!Ow2CJ|M1z%PqAzx0!;kRR))YBW~xt6{^u+`YI<#X?^xGzZ}--O^PWX>YGZGsG*@n=JzOPWbqXg_ zWg`pKh%o^9LJwy1geKRYd-uOXaWy!=72RIQN&9$fsCYkUJ-TWk4_Lj?4(_AtT^zJV zF>a&ij&vGW-uTtRr>SX-US&)Ul%Cz&s=O5YbGFs8UF6KOAC^D`7JFmbg$2-Qb=V(13<{UF1! z9Wwo><4mCi{l~Pq2DW^w?S-YSm1tKe`xkdgHzcz1#9 zwmj@oKRHGH*~R6ZSN^(8&We1d8xJ=P?K?<-0<5m+PeCIk2_XDZcjYF1bDN%e)ZK;R zT`v|MN$fr53JH&|@sUPV`}590|0`l8Me~(e7UW?p93Wck&A)0e+)5|aAWk~58I2}M z;=0v#f~twazJA2qYMGZ?+F=Oyf2o@AjX;ptPl+j^N7~2vp_+ti^YhvvZGkfmvdc&j zn8g#E4J*NE^2qD%>!Ws8s@E1M+P#c^USyV>=j3E%1>b^B5;rknblg1VN7TM|0tjnm z%C~M}I^dcaejk;xT_h00h)UJSiu@$%Jfw*nJ>J=3Jf?WKTnEz~jn>a|>RfC7HrrAa zvrSpQC7J3Qj!vQ55;7UTKXCP^-jBSaN}*nMoaF6@gd9zdc(Q3(y*i{Z&~|t)Vv6x+ z4*DEoJ<8{`MO5i4vA?1r5T@7PA^rz;iN_P1&XuYf75MnXUnJn_XsC}jILI0uQ(rF? z-_6H=+tb45?2G@)$l#m$iADrSNKIN!s7duaE_I{T1+q-*Owt#>6iBOx9k1h~z5oj- z%EczO-b|_6ivE&5fQb}eHPeaGWZ9XZs0k~{)zandu{dV7CoMA_#Tx?HFhD*LZx<}* zt!3;{w>pq}xRLGrwTjfa!)&~8q^ukD%$dd_UHOctoi_Q)`Q9AL5!dj81#a)7uCQso z`}WsQ5)y9jle+R=s&xa44j;T*iXuzV%0K{uPS%>#_Aor#hKpv2usH{{7U^pEcP+C~ zlkI~~yiKN+j1&>~NP?H=AQEAeJjwtT_}^4Wrg4ssDDa%_ov$!^G7>DTA(m4nnPuDR z?uV}$(g&A{CX~|$Vtys36#FIT>6UGle~Qqz-*I}WuJtN`h@1w3+b&%wzp%^wdVjS? z26%xHzSYJ4-n;p&O?XC_^D;A%F`D2dev~d}F{VJr2L=Ppp#<(8g$Fu?Z~OQb1<}A)*yygzu6TQ^?sfN9k2L*D zZQ<0@5%3O{%+rsbFTOP6}}9_d0h@q3ioUy<2Dsl5w&zvzo1`|Gs9wYWEHUB_-4@M^lBr*B-mI7KV#rS-Irz?~4&_2d7gKiS~N(QBC%Z`n74 zQBhBR@@Ls4Y&so@t;q}w*OT+spG*=w+q=!0^(o(_pNg9oG>N+DpEwinX#z0cBmz_C z8s|sbS}PVD`S`k6`ni;#>zXw>Vj)Y|UDCc;I=A;mMn2luzt6FyGXA*NE2ZPv+D^4j z=F`&Tok$CU=#`)jPw0~{!t?InZs@x74 z)pk37L>-jpEhcRgX4eyB1fO@YO$XG`f^?+Nb}%njy{TxlZRIoIu!y>#-#6e$bI2WS z&rL-!=hcCQLte;NyN2JuJqDB7H05@eUMXd0xu*snUR8`O?y<8!(R)7hdr=B-h1zAE zT~}&=3(Lf`PV+sQ`q<-okI8r5qV`9-Q&(AuIe9RfY$%esYkq;ZYhCZf(1ik3*(*VF zLi40W;xC`Ex&j%a_LbpOe7pP|aIYV5sicK-u=ml}2W<9uzWRIa$FSskXLzt@&fBZ2&I$T5 zG^EA)@B+7W+zRh==I9N)Robr>9bg=MK5z0pkNNCQw;a6Ff`s|bJmHiw*~Mn>6y@W+ zZs~~|%k*n+G4|BoX}P>YFo+j8LZ#3W;=Vdc47j%J5Y972wC25c*iDl}A{an^LB{Ts5FFAn~ diff --git a/docs/basic/img/attribute-5.png b/docs/basic/img/attribute-5.png index 7f379e559f976174a638d481188f6f493db98755..2645ec94e08c91c9f04b4aaa2efb930358814d5f 100644 GIT binary patch literal 19321 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 fAAMbWgb#y-B)z4*}Q$iB}vfN%9 delta 7050 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⋙*3t-=6EU@%{NH{W#>bMheSj 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 literal 47324 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ͷNc7($Lm#qNMWfX6 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 C2>7}H diff --git a/docs/basic/img/attribute-8.png b/docs/basic/img/attribute-8.png new file mode 100644 index 0000000000000000000000000000000000000000..340791f88a56b38ddb83933d1678a0c52e9f984f GIT binary patch literal 47324 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ͷNc7($Lm#qNMWfX6 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 e-#j|IJbHKX;6U##@b@7QNL^W5sZ7B- Date: Fri, 19 Jul 2024 13:48:53 +0700 Subject: [PATCH 09/11] feat: improve attribute lint & diagnostic --- docs/basic/attributes.md | 69 +++++++++++++++++++++++++++++----------- 1 file changed, 50 insertions(+), 19 deletions(-) diff --git a/docs/basic/attributes.md b/docs/basic/attributes.md index b49900e3..fc1c9185 100644 --- a/docs/basic/attributes.md +++ b/docs/basic/attributes.md @@ -286,6 +286,8 @@ Output program ketika dijalankan di komputer penulis yang menggunakan Windows: ![Attribute](img/attribute-4.png) +> Lebih detailnya mengenai macro akan dibahas di chapter terpisah. + ### â—‰ Configuration `debug_assertions` By default, Rust menggunakan profil kompilasi **debug** saat eksekusi command `cargo run`. Di kode program, penanda apakah profil kompilasi debug digunakan atau tidak bisa dilihat dari nilai konfigurasi `#[cfg(debug_assertions)]` via attribute, dan `cfg!(debug_assertions)` via macro. @@ -351,6 +353,17 @@ fn say_something() { println!("how are you") } +pub mod m1 { + #[allow(missing_docs)] + pub fn undocumented_one() -> i32 { 1 } + + #[warn(missing_docs)] + pub fn undocumented_too() -> i32 { 2 } + + // #[deny(missing_docs)] + // pub fn undocumented_end() -> i32 { 3 } +} + fn main() { #[allow(unused_variables)] let name = "noval agung"; @@ -359,14 +372,50 @@ fn main() { } ``` -Pada kode di atas, attribute name `allow` digunakan pada 3 tempat: +Pada kode di atas, ada beberapa attribute yang digunakan: - `#[allow(unused_imports)]` digunakan untuk antisipasi error yang muncul ketika module item di-import namun tidak digunakan. - `#[allow(dead_code)]` digunakan untuk membolehkan kode yang tidak digunakan. - `#[allow(unused_variables)]` digunakan untuk membolehkan variabel yang didefinisikan tapi tidak dimanfaatkan. +- `#[allow(missing_docs)]` membolehkan kode di bawahnya untuk tidak memiliki komentar/dokumentasi. +- `#[warn(missing_docs)]` memunculkan warning jika kode di bawahnya tidak memiliki komentar/dokumentasi. +- `#[deny(missing_docs)]` memunculkan error jika kode di bawahnya tidak memiliki komentar/dokumentasi. Kode ini sengaja di-remark agar eksekusi program tidak menghasilkan error. Dengan penambahan 3 attribute di atas program akan tereksekusi tanpa warning. +![Attribute](img/attribute-7.png) + +Ada beberapa attribute *key* yang bisa digunakan untuk override *lint* warning: + +- `#[allow(lint_rule)]` untuk membolehkan suatu *lint rule*.
List `lint_rule` bisa dilihat di https://doc.rust-lang.org/rustc/lints/listing/allowed-by-default.html. + +- `#[warn(lint_rule)]` untuk memunculkan warning untuk suatu *lint rule* yang *default*-nya tidak memunculkan warning.
List `lint_rule` bisa dilihat di https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html. + +- `#[deny(lint_rule)]` untuk melarang suatu *lint rule* yang *default*-nya adalah diperbolehkan.
List `lint_rule` bisa dilihat di https://doc.rust-lang.org/rustc/lints/listing/deny-by-default.html. + +- `#[forbid(lint_rule)]` untuk melarang suatu *lint rule* yang *default*-nya adalah diperbolehkan **dengan catatan kode beserta isi yang dituju lint tersebut tidak bisa diubah menjadi *lint rule*-nya menjadi `allow` lagi**. Penjelasan detailnya ada di https://doc.rust-lang.org/reference/attributes/diagnostics.html + + Contoh penerapan: + + ```rust + #[forbid(missing_docs)] + pub mod m3 { + #[allow(missing_docs)] + pub fn undocumented_too() -> i32 { 2 } + } + ``` + + Attribute `#[forbid(missing_docs)]` pada module `m3` menjadikan seluruh isi block module tersebut harus memiliki dokumentasi, mirip seperti penggunaan `#[deny(missing_docs)]`. + + Penggunaan `allow` di dalam block tersebut membuat eksekusi program menghasilkan error, karena meskipun attribute tersebut ditujukan untuk fungsi `undocumented_too()` pada parent block (yaitu module `m3`) sudah ditentukan aturannya menggunakan `forbid`. + + + +Selain 3 attribute di atas, ada juga beberapa attribute lainnya untuk keperluan *diagnostic*, di antaranya: + +- `#[deprecated]` digunakan untuk menandai bahwa kode di bawahnya adalah *deprecated*. +- `#[must_use]` digunakan untuk mendandai bahwa kode di bawahnya harus digunakan, jika tidak maka akan muncul error. + Selain itu ada juga attribute `forbid`. Pada kode sebelumnya silahkan tambahkan kode berikut di bagian paling atas: @@ -393,24 +442,6 @@ dengan `forbid` kita bisa membuat kode yang melanggar aturan lint tersebut menja Maka kode di atas akan menghasilkan error. -![Attribute](img/attribute-7.png) - -Ada beberapa attribute *key* yang bisa digunakan untuk override *lint* warning: - -- `#[allow(lint_rule)]` untuk membolehkan suatu *lint rule*.
List `lint_rule` bisa dilihat di https://doc.rust-lang.org/rustc/lints/listing/allowed-by-default.html. - -- `#[warn(lint_rule)]` untuk memunculkan warning untuk suatu *lint rule* yang *default*-nya tidak memunculkan warning.
List `lint_rule` bisa dilihat di https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html. - -- `#[deny(lint_rule)]` untuk melarang suatu *lint rule* yang *default*-nya adalah diperbolehkan.
List `lint_rule` bisa dilihat di https://doc.rust-lang.org/rustc/lints/listing/deny-by-default.html. - -- `#[forbid(lint_rule)]` untuk melarang suatu *lint rule* yang *default*-nya adalah diperbolehkan **dan tidak bisa di `allow` lagi**. -> PERINGATAN! Tidak di rekomendasikan untuk menggunakan `forbid` dengan lint rule selain dari `unsafe_code`, karena akan menyebabkan masalah backward compatibility di beberapa library yang menggunakan macro misalnya. -> [Referensi](https://github.com/tokio-rs/tokio/issues/6448#issuecomment-2029480131). - -Selain 3 attribute di atas, ada juga beberapa attribute lainnya untuk keperluan *diagnostic*, di antaranya: - -- `#[deprecated]` digunakan untuk menandai bahwa kode di bawahnya adalah *deprecated*. -- `#[must_use]` digunakan untuk mendandai bahwa kode di bawahnya harus digunakan, jika tidak maka akan muncul error. ## A.49.5. Attribute *type system* From 6c6a07031b62c5529f95747bcaa62271d39566ac Mon Sep 17 00:00:00 2001 From: novalagung Date: Fri, 19 Jul 2024 13:53:02 +0700 Subject: [PATCH 10/11] fix: small typo --- docs/basic/attributes.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/basic/attributes.md b/docs/basic/attributes.md index fc1c9185..ce312649 100644 --- a/docs/basic/attributes.md +++ b/docs/basic/attributes.md @@ -167,7 +167,7 @@ Bisa dilihat, hasilnya program tereksekusi tanpa error. Enum `Superhero` kini me ## A.49.3. Attribute `cfg` / *configuration* -Attribute `cfg` digunakan untuk operasi-opearsi yang berhubungan dengan target arsitekture hardware/prosesor, misalnya seperti conditional compilation ketika OS adalah linux, dan lainnya. +Attribute `cfg` digunakan untuk operasi-operasi yang berhubungan dengan target arsitekture hardware/prosesor, misalnya seperti conditional compilation ketika OS adalah linux, dan lainnya. Salah satu contoh penerapannya bisa dilihat pada kode berikut. Ada 2 buah module yang namanya sama persis, perbedaannya adalah satu didefinisikan khusus untuk platform `linux`, dan satunya lagi untuk platform `windows`. Hal seperti ini bisa dilakukan menggunakan attribute `cfg` dengan key `target_os`. From a9487a95895b787bdb93cf918b1e051f7b4dfa90 Mon Sep 17 00:00:00 2001 From: novalagung Date: Fri, 19 Jul 2024 13:53:52 +0700 Subject: [PATCH 11/11] feat: remove unused content --- docs/basic/attributes.md | 27 --------------------------- 1 file changed, 27 deletions(-) diff --git a/docs/basic/attributes.md b/docs/basic/attributes.md index ce312649..27ba618f 100644 --- a/docs/basic/attributes.md +++ b/docs/basic/attributes.md @@ -416,33 +416,6 @@ Selain 3 attribute di atas, ada juga beberapa attribute lainnya untuk keperluan - `#[deprecated]` digunakan untuk menandai bahwa kode di bawahnya adalah *deprecated*. - `#[must_use]` digunakan untuk mendandai bahwa kode di bawahnya harus digunakan, jika tidak maka akan muncul error. -Selain itu ada juga attribute `forbid`. - -Pada kode sebelumnya silahkan tambahkan kode berikut di bagian paling atas: -```rust -#![forbid(unsafe_code)] -//... -``` - -Lalu di main function nya tambahkan juga kode berikut: -```rust -fn main() { - //... - - #[allow(unsafe_code)] - unsafe{}; -} -``` -pada kode di atas, attribute `forbid` di gunakan pada 2 tempat: -- `#![forbid(unsafe_code)]` inner attribute, digunakan untuk semua crate tidak boleh menggunakan unsafe block (unsafe block akan dibahas di chapter: [Safe & Unsafe](#/wip/safe-unsafe)). -- `#[allow(unsafe_code)]` outer attribute, disini kita mencoba untuk meng**ignore** aturan `forbid`. - -dengan `forbid` kita bisa membuat kode yang melanggar aturan lint tersebut menjadi error dan tidak bisa di `allow` atau dengan kata lain `forbid` tidak bisa di **ignore**. - -Maka kode di atas akan menghasilkan error. - - - ## A.49.5. Attribute *type system* Ada sebuah attribute bernama `non_exhaustive` gunanya untuk mem-*bypass* error yang muncul karena ada pattern matching yang tidak meng-cover semua kondisi, atau untuk mengantisipasi error yang muncul saat deklarasi variabel bertipe struct tapi value property-nya tidak diisi.