1
0
mirror of https://github.com/google/comprehensive-rust.git synced 2025-04-22 23:58:39 +02:00

fa: Try to complete Farsi part2 (#2378)

fa: Try to complete Farsi part2

---------

Co-authored-by: javad-jafari <javajafarifromsharak@gmail.com>
Co-authored-by: javad-jafari <65780584+javad-jafari@users.noreply.github.com>
This commit is contained in:
Danny Khosravi 2024-09-24 01:30:48 +03:30 committed by GitHub
parent 83b74de18b
commit f64edfc1f7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

179
po/fa.po
View File

@ -2,7 +2,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Comprehensive Rust 🦀\n" "Project-Id-Version: Comprehensive Rust 🦀\n"
"POT-Creation-Date: 2024-09-11T22:10:46Z\n" "POT-Creation-Date: 2024-09-11T22:10:46Z\n"
"PO-Revision-Date: 2024-09-21 20:11+0330\n" "PO-Revision-Date: 2024-09-24 00:14+0330\n"
"Last-Translator: alix1383 <dev.alix13@gmail.com>\n" "Last-Translator: alix1383 <dev.alix13@gmail.com>\n"
"Language-Team: Persian\n" "Language-Team: Persian\n"
"Language: fa\n" "Language: fa\n"
@ -570,7 +570,7 @@ msgstr "`FromIterator`"
#: src/SUMMARY.md src/iterators.md src/iterators/exercise.md #: src/SUMMARY.md src/iterators.md src/iterators/exercise.md
msgid "Exercise: Iterator Method Chaining" msgid "Exercise: Iterator Method Chaining"
msgstr "" msgstr "تمرین: روش Iterator Chaining"
#: src/SUMMARY.md src/running-the-course/course-structure.md #: src/SUMMARY.md src/running-the-course/course-structure.md
#: src/welcome-day-4.md src/modules.md src/modules/modules.md #: src/welcome-day-4.md src/modules.md src/modules/modules.md
@ -591,7 +591,7 @@ msgstr ""
#: src/SUMMARY.md src/modules.md src/modules/exercise.md #: src/SUMMARY.md src/modules.md src/modules/exercise.md
msgid "Exercise: Modules for a GUI Library" msgid "Exercise: Modules for a GUI Library"
msgstr "" msgstr "تمرین: ماژولهایی برای کتابخانه رابط کاربری گرافیکی"
#: src/SUMMARY.md src/running-the-course/course-structure.md #: src/SUMMARY.md src/running-the-course/course-structure.md
#: src/welcome-day-4.md src/testing.md src/chromium/testing.md #: src/welcome-day-4.md src/testing.md src/chromium/testing.md
@ -645,7 +645,7 @@ msgstr ""
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Exercise: Rewriting with `Result`" msgid "Exercise: Rewriting with `Result`"
msgstr "" msgstr "تمرین: بازنویسی با «نتیجه»."
#: src/SUMMARY.md src/running-the-course/course-structure.md #: src/SUMMARY.md src/running-the-course/course-structure.md
#: src/welcome-day-4-afternoon.md src/unsafe-rust.md src/unsafe-rust/unsafe.md #: src/welcome-day-4-afternoon.md src/unsafe-rust.md src/unsafe-rust/unsafe.md
@ -658,7 +658,7 @@ msgstr "ناایمن"
#: src/SUMMARY.md src/unsafe-rust.md src/unsafe-rust/dereferencing.md #: src/SUMMARY.md src/unsafe-rust.md src/unsafe-rust/dereferencing.md
msgid "Dereferencing Raw Pointers" msgid "Dereferencing Raw Pointers"
msgstr "" msgstr "عدم ارجاع به اشاره‌گرهای خام"
#: src/SUMMARY.md src/unsafe-rust.md src/unsafe-rust/mutable-static.md #: src/SUMMARY.md src/unsafe-rust.md src/unsafe-rust/mutable-static.md
msgid "Mutable Static Variables" msgid "Mutable Static Variables"
@ -678,7 +678,7 @@ msgstr "صفات (Traits) ناامن"
#: src/SUMMARY.md src/unsafe-rust.md #: src/SUMMARY.md src/unsafe-rust.md
msgid "Exercise: FFI Wrapper" msgid "Exercise: FFI Wrapper"
msgstr "" msgstr "تمرین: FFI Wrapper"
#: src/SUMMARY.md src/bare-metal/android.md #: src/SUMMARY.md src/bare-metal/android.md
msgid "Android" msgid "Android"
@ -706,7 +706,7 @@ msgstr "AIDL"
#: src/SUMMARY.md src/android/aidl/birthday-service.md #: src/SUMMARY.md src/android/aidl/birthday-service.md
msgid "Birthday Service Tutorial" msgid "Birthday Service Tutorial"
msgstr "" msgstr "آموزش سرویس Birthday"
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Interface" msgid "Interface"
@ -727,7 +727,7 @@ msgstr "سرور"
#: src/SUMMARY.md src/android/aidl/example-service/deploy.md #: src/SUMMARY.md src/android/aidl/example-service/deploy.md
msgid "Deploy" msgid "Deploy"
msgstr "دیپلوی" msgstr "استقرار"
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Client" msgid "Client"
@ -772,7 +772,7 @@ msgstr "ارسال فایل‌ها"
#: src/SUMMARY.md src/android/testing/googletest.md #: src/SUMMARY.md src/android/testing/googletest.md
msgid "GoogleTest" msgid "GoogleTest"
msgstr "" msgstr "GoogleTest"
#: src/SUMMARY.md src/android/testing/mocking.md #: src/SUMMARY.md src/android/testing/mocking.md
msgid "Mocking" msgid "Mocking"
@ -816,7 +816,7 @@ msgstr ""
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "C++ Bridge" msgid "C++ Bridge"
msgstr "" msgstr "پل ++C "
#: src/SUMMARY.md src/android/interoperability/cpp/shared-types.md #: src/SUMMARY.md src/android/interoperability/cpp/shared-types.md
msgid "Shared Types" msgid "Shared Types"
@ -832,7 +832,7 @@ msgstr "مدیریت خطا Rust"
#: src/SUMMARY.md src/android/interoperability/cpp/cpp-exception.md #: src/SUMMARY.md src/android/interoperability/cpp/cpp-exception.md
msgid "C++ Error Handling" msgid "C++ Error Handling"
msgstr "مدیریت خطا C++" msgstr "مدیریت خطا ++C "
#: src/SUMMARY.md src/android/interoperability/cpp/type-mapping.md #: src/SUMMARY.md src/android/interoperability/cpp/type-mapping.md
msgid "Additional Types" msgid "Additional Types"
@ -840,15 +840,15 @@ msgstr ""
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Building for Android: C++" msgid "Building for Android: C++"
msgstr "" msgstr "روش Build برای اندروید: ++C"
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Building for Android: Genrules" msgid "Building for Android: Genrules"
msgstr "" msgstr "روش Build برای اندروید: ژانرها"
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Building for Android: Rust" msgid "Building for Android: Rust"
msgstr "" msgstr "روش Build برای اندروید: Rust"
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "With Java" msgid "With Java"
@ -864,11 +864,11 @@ msgstr "تمرین‌ها"
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Chromium" msgid "Chromium"
msgstr "" msgstr "Chromium"
#: src/SUMMARY.md src/chromium/cargo.md #: src/SUMMARY.md src/chromium/cargo.md
msgid "Comparing Chromium and Cargo Ecosystems" msgid "Comparing Chromium and Cargo Ecosystems"
msgstr "" msgstr "مقایسه Chromium و اکوسیستم Cargo"
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Policy" msgid "Policy"
@ -881,7 +881,7 @@ msgstr "Rust ناایمن"
#: src/SUMMARY.md src/chromium/build-rules/depending.md #: src/SUMMARY.md src/chromium/build-rules/depending.md
msgid "Depending on Rust Code from Chromium C++" msgid "Depending on Rust Code from Chromium C++"
msgstr "" msgstr "بسته به Rust Code از ++Chromium C"
#: src/SUMMARY.md src/chromium/build-rules/vscode.md #: src/SUMMARY.md src/chromium/build-rules/vscode.md
msgid "Visual Studio Code" msgid "Visual Studio Code"
@ -897,7 +897,7 @@ msgstr "`rust_gtest_interop` Library"
#: src/SUMMARY.md src/chromium/testing/build-gn.md #: src/SUMMARY.md src/chromium/testing/build-gn.md
msgid "GN Rules for Rust Tests" msgid "GN Rules for Rust Tests"
msgstr "" msgstr "قواعد GN برای تست‌های Rust"
#: src/SUMMARY.md src/chromium/testing/chromium-import-macro.md #: src/SUMMARY.md src/chromium/testing/chromium-import-macro.md
msgid "`chromium::import!` Macro" msgid "`chromium::import!` Macro"
@ -939,21 +939,21 @@ msgstr ""
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Configuring Cargo.toml" msgid "Configuring Cargo.toml"
msgstr "" msgstr "پیکربندی Cargo.toml"
#: src/SUMMARY.md #: src/SUMMARY.md
#: src/chromium/adding-third-party-crates/configuring-gnrt-config-toml.md #: src/chromium/adding-third-party-crates/configuring-gnrt-config-toml.md
msgid "Configuring `gnrt_config.toml`" msgid "Configuring `gnrt_config.toml`"
msgstr "" msgstr "تنظیمات `gnrt_config.toml`"
#: src/SUMMARY.md src/chromium/adding-third-party-crates/downloading-crates.md #: src/SUMMARY.md src/chromium/adding-third-party-crates/downloading-crates.md
msgid "Downloading Crates" msgid "Downloading Crates"
msgstr "" msgstr "دانلود کردن Crateها"
#: src/SUMMARY.md #: src/SUMMARY.md
#: src/chromium/adding-third-party-crates/generating-gn-build-rules.md #: src/chromium/adding-third-party-crates/generating-gn-build-rules.md
msgid "Generating `gn` Build Rules" msgid "Generating `gn` Build Rules"
msgstr "" msgstr "ایجاد قواعد `gn` Build."
#: src/SUMMARY.md src/chromium/adding-third-party-crates/resolving-problems.md #: src/SUMMARY.md src/chromium/adding-third-party-crates/resolving-problems.md
msgid "Resolving Problems" msgid "Resolving Problems"
@ -962,17 +962,17 @@ msgstr "حل مشکلات"
#: src/SUMMARY.md #: src/SUMMARY.md
#: src/chromium/adding-third-party-crates/resolving-problems/build-scripts-which-generate-code.md #: src/chromium/adding-third-party-crates/resolving-problems/build-scripts-which-generate-code.md
msgid "Build Scripts Which Generate Code" msgid "Build Scripts Which Generate Code"
msgstr "" msgstr "ساخت اسکریپت‌هایی که کد را تولید می‌کنند."
#: src/SUMMARY.md #: src/SUMMARY.md
#: src/chromium/adding-third-party-crates/resolving-problems/build-scripts-which-take-arbitrary-actions.md #: src/chromium/adding-third-party-crates/resolving-problems/build-scripts-which-take-arbitrary-actions.md
msgid "Build Scripts Which Build C++ or Take Arbitrary Actions" msgid "Build Scripts Which Build C++ or Take Arbitrary Actions"
msgstr "" msgstr "ساخت اسکریپت‌هایی که ++C را Build می‌کند یا اقدامات دلخواه انجام می‌دهند."
#: src/SUMMARY.md #: src/SUMMARY.md
#: src/chromium/adding-third-party-crates/depending-on-a-crate.md #: src/chromium/adding-third-party-crates/depending-on-a-crate.md
msgid "Depending on a Crate" msgid "Depending on a Crate"
msgstr "" msgstr "وابسته به یک Crate"
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Reviews and Audits" msgid "Reviews and Audits"
@ -980,7 +980,7 @@ msgstr "بررسی‌ها و ممیزی‌ها"
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Checking into Chromium Source Code" msgid "Checking into Chromium Source Code"
msgstr "" msgstr "کد‌های Chromium را بررسی کنید."
#: src/SUMMARY.md src/chromium/adding-third-party-crates/keeping-up-to-date.md #: src/SUMMARY.md src/chromium/adding-third-party-crates/keeping-up-to-date.md
msgid "Keeping Crates Up to Date" msgid "Keeping Crates Up to Date"
@ -988,7 +988,7 @@ msgstr ""
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Bringing It Together - Exercise" msgid "Bringing It Together - Exercise"
msgstr "" msgstr "دور همی تمرین کنید"
#: src/SUMMARY.md src/exercises/chromium/solutions.md #: src/SUMMARY.md src/exercises/chromium/solutions.md
#, fuzzy #, fuzzy
@ -1334,7 +1334,7 @@ msgstr "سپاس!"
#. Please keep { #glossary } untranslated. #. Please keep { #glossary } untranslated.
#: src/SUMMARY.md src/glossary.md #: src/SUMMARY.md src/glossary.md
msgid "Glossary" msgid "Glossary"
msgstr "واژه نامه" msgstr "واژهنامه"
#: src/SUMMARY.md #: src/SUMMARY.md
msgid "Other Resources" msgid "Other Resources"
@ -1553,7 +1553,7 @@ msgstr ""
#: src/running-the-course.md #: src/running-the-course.md
msgid "Before you run the course, you will want to:" msgid "Before you run the course, you will want to:"
msgstr "قبل از اجرای دوره، شما می خواهید:" msgstr "قبل از اجرای دوره، شما میخواهید:"
#: src/running-the-course.md #: src/running-the-course.md
msgid "" msgid ""
@ -4912,7 +4912,7 @@ msgstr "// Aliases are more useful with long, complex types:\n"
#: src/user-defined-types/aliases.md #: src/user-defined-types/aliases.md
msgid "C programmers will recognize this as similar to a `typedef`." msgid "C programmers will recognize this as similar to a `typedef`."
msgstr "" msgstr "برنامه‌نویسان C این را شبیه به `typedef` تشخیص می‌دهند."
#: src/user-defined-types/exercise.md #: src/user-defined-types/exercise.md
msgid "" msgid ""
@ -7222,7 +7222,7 @@ msgstr "Read and Write"
#: src/std-traits.md #: src/std-traits.md
msgid "Default, struct update syntax" msgid "Default, struct update syntax"
msgstr "" msgstr "به طور پیش‌فرض، ساختار به‌روزرسانی syntax"
#: src/std-traits.md #: src/std-traits.md
msgid "" msgid ""
@ -7730,6 +7730,10 @@ msgid ""
"then exclusive reference, then by move). The `move` keyword forces capture " "then exclusive reference, then by move). The `move` keyword forces capture "
"by value." "by value."
msgstr "" msgstr ""
"به صورت پیش‌فرض، بسته‌بندی‌ها (closures) هر متغیر از یک دامنه بیرونی را با "
"کمترین سطح دسترسی ممکن (با ارجاع مشترک اگر ممکن باشد، سپس ارجاع انحصاری، سپس "
"با انتقال) capture می‌کنند. کلیدواژه `move` یا انتقال، capture را به صورت "
"value اجباری می‌کند."
#: src/std-traits/closures.md src/smart-pointers/trait-objects.md #: src/std-traits/closures.md src/smart-pointers/trait-objects.md
msgid "\"{} {}\"" msgid "\"{} {}\""
@ -8250,7 +8254,7 @@ msgstr ""
#: src/memory-management/move.md #: src/memory-management/move.md
msgid "Defensive Copies in Modern C++" msgid "Defensive Copies in Modern C++"
msgstr "کپی‌های تدافعی در <span dir=ltr>C++</span> مدرن" msgstr "نسخههای دفاعی در ++C مدرن"
#: src/memory-management/move.md #: src/memory-management/move.md
msgid "Modern C++ solves this differently:" msgid "Modern C++ solves this differently:"
@ -9441,6 +9445,8 @@ msgid ""
"By implementing `Deref` (and `DerefMut` for `RefMut`), these types allow " "By implementing `Deref` (and `DerefMut` for `RefMut`), these types allow "
"calling methods on the inner value without allowing references to escape." "calling methods on the inner value without allowing references to escape."
msgstr "" msgstr ""
"با پیاده‌سازی `Deref` (و `DerefMut` برای `RefMut`)، این تایپ‌ها امکان فراخوانی "
"متدها روی مقدار داخلی را بدون اجازه خروج ارجاع‌ها فراهم می‌کنند."
#: src/borrowing/interior-mutability.md #: src/borrowing/interior-mutability.md
#, fuzzy #, fuzzy
@ -10086,7 +10092,7 @@ msgstr "تست‌کردن"
#: src/welcome-day-4.md #: src/welcome-day-4.md
msgid "Error handling: panics, `Result`, and the try operator `?`." msgid "Error handling: panics, `Result`, and the try operator `?`."
msgstr "" msgstr "رسیدگی به خطا: panics در `Result` و اپراتور تلاش مجدد `?`."
#: src/welcome-day-4.md #: src/welcome-day-4.md
msgid "" msgid ""
@ -10177,6 +10183,8 @@ msgid ""
"Click through to the docs for `IntoIterator`. Every implementation of " "Click through to the docs for `IntoIterator`. Every implementation of "
"`IntoIterator` must declare two types:" "`IntoIterator` must declare two types:"
msgstr "" msgstr ""
"روی مستندات`IntoIterator` کلیک کنید. هر پیاده‌سازی `IntoIterator` باید دو نوع "
"را اعلام کند:"
#: src/iterators/intoiterator.md #: src/iterators/intoiterator.md
msgid "`Item`: the type to iterate over, such as `i8`," msgid "`Item`: the type to iterate over, such as `i8`,"
@ -10278,6 +10286,9 @@ msgid ""
"pass. Use an iterator expression and `collect` the result to construct the " "pass. Use an iterator expression and `collect` the result to construct the "
"return value." "return value."
msgstr "" msgstr ""
"کد زیر را در<https://play.rust-lang.org/> کپی کنید و تست ها را قبول کنید. از "
"یک عبارت تکرارکننده (iterator) استفاده کنید و نتیجه را جمع‌آوری (`collect`) "
"کنید تا مقدار بازگشتی را بسازید."
#: src/iterators/exercise.md src/iterators/solution.md #: src/iterators/exercise.md src/iterators/solution.md
#, fuzzy #, fuzzy
@ -10329,6 +10340,8 @@ msgid ""
"Crates are a tree of modules, where a binary crate creates an executable and " "Crates are a tree of modules, where a binary crate creates an executable and "
"a library crate compiles to a library." "a library crate compiles to a library."
msgstr "" msgstr ""
"در واقع Crateها درختی از ماژول‌ها هستند که در آن یک crate باینری یک فایل "
"اجرایی ایجاد می‌کند و یک crate کتابخانه در یک کتابخانه کامپایل می‌شود."
#: src/modules/modules.md #: src/modules/modules.md
msgid "Modules define organization, scope, and are the focus of this section." msgid "Modules define organization, scope, and are the focus of this section."
@ -10396,6 +10409,8 @@ msgid ""
"Before Rust 2018, modules needed to be located at `module/mod.rs` instead of " "Before Rust 2018, modules needed to be located at `module/mod.rs` instead of "
"`module.rs`, and this is still a working alternative for editions after 2018." "`module.rs`, and this is still a working alternative for editions after 2018."
msgstr "" msgstr ""
"قبل از Rust 2018، ماژول‌ها باید به جای `module.rs` در `module/mod.rs` قرار "
"می‌گرفتند و این هنوز یک جایگزین کارآمد برای نسخه‌های بعد از 2018 است."
#: src/modules/filesystem.md #: src/modules/filesystem.md
msgid "" msgid ""
@ -10406,6 +10421,8 @@ msgstr ""
#: src/modules/filesystem.md #: src/modules/filesystem.md
msgid "Deeper nesting can use folders, even if the main module is a file:" msgid "Deeper nesting can use folders, even if the main module is a file:"
msgstr "" msgstr ""
"لانه‌گزینی(nesting) عمیق‌تر می‌تواند از folderها استفاده کند، حتی اگر ماژول "
"اصلی یک فایل باشد:"
#: src/modules/filesystem.md #: src/modules/filesystem.md
msgid "" msgid ""
@ -10440,6 +10457,8 @@ msgid ""
"In other words, if an item is visible in module `foo`, it's visible in all " "In other words, if an item is visible in module `foo`, it's visible in all "
"the descendants of `foo`." "the descendants of `foo`."
msgstr "" msgstr ""
"به عبارت دیگر، اگر یک مورد در ماژول `foo` قابل مشاهده باشد، در همه "
"فرزندان`foo` قابل مشاهده است."
#: src/modules/visibility.md #: src/modules/visibility.md
msgid "\"outer::private\"" msgid "\"outer::private\""
@ -10477,7 +10496,7 @@ msgstr ""
#: src/modules/visibility.md #: src/modules/visibility.md
msgid "Configuring `pub(crate)` visibility is a common pattern." msgid "Configuring `pub(crate)` visibility is a common pattern."
msgstr "" msgstr "پیکربندی قابل نمایش بودن `pub(crate)` یک الگوی رایج است."
#: src/modules/visibility.md #: src/modules/visibility.md
msgid "Less commonly, you can give visibility to a specific path." msgid "Less commonly, you can give visibility to a specific path."
@ -10488,6 +10507,7 @@ msgid ""
"In any case, visibility must be granted to an ancestor module (and all of " "In any case, visibility must be granted to an ancestor module (and all of "
"its descendants)." "its descendants)."
msgstr "" msgstr ""
"در هر صورت، قابلیت دیدن باید به یک ماژول والد (و همه فرزندان آن) داده شود."
#: src/modules/paths.md #: src/modules/paths.md
msgid "" msgid ""
@ -10594,7 +10614,7 @@ msgstr "منبع"
#: src/modules/exercise.md #: src/modules/exercise.md
msgid "Here's the single-module implementation of the GUI library:" msgid "Here's the single-module implementation of the GUI library:"
msgstr "" msgstr "در اینجا اجرای تک ماژول کتابخانه GUI آمده است:"
#: src/modules/exercise.md src/modules/solution.md #: src/modules/exercise.md src/modules/solution.md
#, fuzzy #, fuzzy
@ -10808,7 +10828,7 @@ msgstr ""
#: src/testing/other.md #: src/testing/other.md
msgid "Create a `.rs` file under `tests/`:" msgid "Create a `.rs` file under `tests/`:"
msgstr "" msgstr "یک فایل `.rs` در زیر `tests/` بسازید:"
#: src/testing/other.md #: src/testing/other.md
#, fuzzy #, fuzzy
@ -10849,6 +10869,7 @@ msgstr ""
#: src/testing/other.md #: src/testing/other.md
msgid "Code blocks in `///` comments are automatically seen as Rust code." msgid "Code blocks in `///` comments are automatically seen as Rust code."
msgstr "" msgstr ""
"بلوک‌های کد در commentها `///` به طور خودکار به عنوان کد Rust دیده می‌شوند."
#: src/testing/other.md #: src/testing/other.md
msgid "The code will be compiled and executed as part of `cargo test`." msgid "The code will be compiled and executed as part of `cargo test`."
@ -11064,7 +11085,7 @@ msgstr "thiserror و anyhow"
#: src/error-handling.md src/error-handling/exercise.md #: src/error-handling.md src/error-handling/exercise.md
msgid "Exercise: Rewriting with Result" msgid "Exercise: Rewriting with Result"
msgstr "" msgstr "تمرین: بازنویسی با نتیجه"
#: src/error-handling/panics.md #: src/error-handling/panics.md
msgid "Rust handles fatal errors with a \"panic\"." msgid "Rust handles fatal errors with a \"panic\"."
@ -11114,6 +11135,8 @@ msgid ""
"By default, a panic will cause the stack to unwind. The unwinding can be " "By default, a panic will cause the stack to unwind. The unwinding can be "
"caught:" "caught:"
msgstr "" msgstr ""
"به طور پیش‌فرض، panic باعث unwind شدن stack می‌شود. unwinding را می‌توان "
"گرفت( در واقع منظور این است که می‌توان آن را caught کرد):"
#: src/error-handling/panics.md #: src/error-handling/panics.md
msgid "\"No problem here!\"" msgid "\"No problem here!\""
@ -11132,6 +11155,8 @@ msgid ""
"Catching is unusual; do not attempt to implement exceptions with " "Catching is unusual; do not attempt to implement exceptions with "
"`catch_unwind`!" "`catch_unwind`!"
msgstr "" msgstr ""
"گرفتن (Catching) غیر معمول است. سعی نکنید exceptionها را با `catch_unwind` "
"پیاده‌سازی کنید!"
#: src/error-handling/panics.md #: src/error-handling/panics.md
msgid "" msgid ""
@ -11193,6 +11218,10 @@ msgid ""
"that you can't tell when calling a function if it may throw an exception or " "that you can't tell when calling a function if it may throw an exception or "
"not." "not."
msgstr "" msgstr ""
"در اکثر زبان‌های دارای exception، این که آیا یک تابع می‌تواند استثنا ایجاد کند "
"یا نه، به عنوان بخشی از نوع امضای(signature) آن قابل مشاهده نیست. این به طور "
"کلی به این معنی است که هنگام فراخوانی یک تابع نمی‌توانید بگویید که آیا ممکن "
"است یک exception ایجاد کند یا خیر."
#: src/error-handling/result.md #: src/error-handling/result.md
msgid "" msgid ""
@ -11203,7 +11232,7 @@ msgstr ""
#: src/error-handling/result.md #: src/error-handling/result.md
msgid "Error Numbers" msgid "Error Numbers"
msgstr "" msgstr "شماره‌های خطا"
#: src/error-handling/result.md #: src/error-handling/result.md
msgid "" msgid ""
@ -11233,7 +11262,7 @@ msgstr ""
#: src/error-handling/try.md #: src/error-handling/try.md
msgid "into the much simpler" msgid "into the much simpler"
msgstr "" msgstr "بسیار ساده‌تر"
#: src/error-handling/try.md #: src/error-handling/try.md
msgid "We can use this to simplify our error handling code:" msgid "We can use this to simplify our error handling code:"
@ -11393,6 +11422,10 @@ msgid ""
"can be a good option in a program where you just want to display the error " "can be a good option in a program where you just want to display the error "
"message somewhere." "message somewhere."
msgstr "" msgstr ""
"خطاهای Boxing باعث صرفه‌جویی در کد می شود، اما توانایی رسیدگی به موارد خطای "
"مختلف را به طور متفاوت در برنامه از بین می‌برد. به این ترتیب استفاده از "
"`Box<dyn Error>` در public API یک کتابخانه ایده خوبی نیست، اما می‌تواند گزینه "
"خوبی در برنامه‌ای باشد که فقط می‌خواهید پیام خطا را در جایی نمایش دهید."
#: src/error-handling/error.md #: src/error-handling/error.md
msgid "" msgid ""
@ -11652,7 +11685,7 @@ msgstr ""
#: src/unsafe-rust/unsafe.md #: src/unsafe-rust/unsafe.md
msgid "Dereference raw pointers." msgid "Dereference raw pointers."
msgstr "" msgstr "اشاره‌گرهای خام."
#: src/unsafe-rust/unsafe.md #: src/unsafe-rust/unsafe.md
msgid "Access or modify mutable static variables." msgid "Access or modify mutable static variables."
@ -11687,7 +11720,7 @@ msgstr ""
#: src/unsafe-rust/dereferencing.md #: src/unsafe-rust/dereferencing.md
msgid "Creating pointers is safe, but dereferencing them requires `unsafe`:" msgid "Creating pointers is safe, but dereferencing them requires `unsafe`:"
msgstr "" msgstr "ایجاد اشاره‌گر ایمن است، اما عدم ارجاع به آنها «ناامن» یا `unsafe` است:"
#: src/unsafe-rust/dereferencing.md #: src/unsafe-rust/dereferencing.md
msgid "\"careful!\"" msgid "\"careful!\""
@ -11777,7 +11810,7 @@ msgstr ""
#: src/unsafe-rust/dereferencing.md #: src/unsafe-rust/dereferencing.md
msgid "In most cases the pointer must also be properly aligned." msgid "In most cases the pointer must also be properly aligned."
msgstr "" msgstr "در بیشتر موارد، اشاره‌گر نیز باید به درستی تراز شود."
#: src/unsafe-rust/dereferencing.md #: src/unsafe-rust/dereferencing.md
msgid "" msgid ""
@ -12129,7 +12162,7 @@ msgstr "NUL-terminated"
#: src/unsafe-rust/exercise.md #: src/unsafe-rust/exercise.md
msgid "Communicating with C functions" msgid "Communicating with C functions"
msgstr "" msgstr "ارتباط با توابع C"
#: src/unsafe-rust/exercise.md #: src/unsafe-rust/exercise.md
msgid "" msgid ""
@ -12145,7 +12178,7 @@ msgstr "مخصوص سیستم‌عامل"
#: src/unsafe-rust/exercise.md #: src/unsafe-rust/exercise.md
msgid "Communicating with the OS" msgid "Communicating with the OS"
msgstr "" msgstr "برقراری ارتباط با سیستم‌عامل"
#: src/unsafe-rust/exercise.md #: src/unsafe-rust/exercise.md
msgid "You will convert between all these types:" msgid "You will convert between all these types:"
@ -12203,6 +12236,8 @@ msgid ""
"Copy the code below to <https://play.rust-lang.org/> and fill in the missing " "Copy the code below to <https://play.rust-lang.org/> and fill in the missing "
"functions and methods:" "functions and methods:"
msgstr "" msgstr ""
"کد زیر را در <https://play.rust-lang.org/> کپی کنید و توابع و متدهای از "
"مفقود شده را پر کنید:"
#: src/unsafe-rust/exercise.md src/unsafe-rust/solution.md #: src/unsafe-rust/exercise.md src/unsafe-rust/solution.md
msgid "\"macos\"" msgid "\"macos\""
@ -15112,6 +15147,7 @@ msgstr ""
msgid "" msgid ""
"Broad, generic examples of projects where `cargo` may be the right choice:" "Broad, generic examples of projects where `cargo` may be the right choice:"
msgstr "" msgstr ""
"نمونه‌های کلی و عمومی از پروژه‌هایی که `cargo` ممکن است انتخاب مناسبی باشد:"
#: src/chromium/cargo.md #: src/chromium/cargo.md
msgid "" msgid ""
@ -17799,6 +17835,8 @@ msgid ""
"Depending on the target, you may need to compile with `panic = \"abort\"` to " "Depending on the target, you may need to compile with `panic = \"abort\"` to "
"avoid an error about `eh_personality`." "avoid an error about `eh_personality`."
msgstr "" msgstr ""
"بسته به هدف، ممکن است لازم باشد برای جلوگیری از خطای `eh_personality` را "
"`panic = \"abort\"` کامپایل کنید."
#: src/bare-metal/minimal.md #: src/bare-metal/minimal.md
msgid "" msgid ""
@ -17950,6 +17988,7 @@ msgid ""
"GPIO 0 pin 21 is connected to the first column of the LED matrix, and pin 28 " "GPIO 0 pin 21 is connected to the first column of the LED matrix, and pin 28 "
"to the first row." "to the first row."
msgstr "" msgstr ""
"در GPIO 0 پایه ۲۱ به ستون اول ماتریس LED و پایه ۲۸ به ردیف اول متصل است."
#: src/bare-metal/microcontrollers/mmio.md #: src/bare-metal/microcontrollers/mmio.md
#: src/bare-metal/microcontrollers/pacs.md #: src/bare-metal/microcontrollers/pacs.md
@ -18009,7 +18048,7 @@ msgstr ""
#: src/bare-metal/microcontrollers/hals.md #: src/bare-metal/microcontrollers/hals.md
msgid "HAL crates" msgid "HAL crates"
msgstr "" msgstr "HAL crates"
#: src/bare-metal/microcontrollers/hals.md #: src/bare-metal/microcontrollers/hals.md
msgid "" msgid ""
@ -18037,16 +18076,21 @@ msgid ""
"HAL crates exist for many Cortex-M and RISC-V devices, including various " "HAL crates exist for many Cortex-M and RISC-V devices, including various "
"STM32, GD32, nRF, NXP, MSP430, AVR and PIC microcontrollers." "STM32, GD32, nRF, NXP, MSP430, AVR and PIC microcontrollers."
msgstr "" msgstr ""
"بسیاری از HAL crateها برای انواعی از دستگاه های Cortex-M و RISC-V از جمله "
"میکروکنترلرهای STM32، GD32، nRF، NXP، MSP430، AVR و PIC مختلف وجود دارد."
#: src/bare-metal/microcontrollers/board-support.md #: src/bare-metal/microcontrollers/board-support.md
msgid "Board support crates" msgid "Board support crates"
msgstr "" msgstr "Board support crates"
#: src/bare-metal/microcontrollers/board-support.md #: src/bare-metal/microcontrollers/board-support.md
#, fuzzy
msgid "" msgid ""
"Board support crates provide a further level of wrapping for a specific " "Board support crates provide a further level of wrapping for a specific "
"board for convenience." "board for convenience."
msgstr "" msgstr ""
"پشتیبانی crateهای Boardها که برای راحتی بیشتر سطح پوششی بیشتری را برای یک "
"board خاص فراهم می‌کنند."
#: src/bare-metal/microcontrollers/board-support.md #: src/bare-metal/microcontrollers/board-support.md
msgid "" msgid ""
@ -18092,6 +18136,8 @@ msgid ""
"Changing the configuration of a pin consumes the old pin instance, so you " "Changing the configuration of a pin consumes the old pin instance, so you "
"can’t keep use the old instance afterwards." "can’t keep use the old instance afterwards."
msgstr "" msgstr ""
"تغییر پیکربندی pin، نمونه pin ​​قدیمی را مصرف می‌کند، بنابراین نمی‌توانید پس از "
"آن از pin قدیمی استفاده کنید."
#: src/bare-metal/microcontrollers/type-state.md #: src/bare-metal/microcontrollers/type-state.md
msgid "" msgid ""
@ -18124,7 +18170,7 @@ msgstr ""
#: src/bare-metal/microcontrollers/embedded-hal.md #: src/bare-metal/microcontrollers/embedded-hal.md
msgid "GPIO" msgid "GPIO"
msgstr "" msgstr "GPIO"
#: src/bare-metal/microcontrollers/embedded-hal.md #: src/bare-metal/microcontrollers/embedded-hal.md
msgid "PWM" msgid "PWM"
@ -18132,11 +18178,11 @@ msgstr "PWM"
#: src/bare-metal/microcontrollers/embedded-hal.md #: src/bare-metal/microcontrollers/embedded-hal.md
msgid "Delay timers" msgid "Delay timers"
msgstr "" msgstr "تایمرهای تاخیری"
#: src/bare-metal/microcontrollers/embedded-hal.md #: src/bare-metal/microcontrollers/embedded-hal.md
msgid "I2C and SPI buses and devices" msgid "I2C and SPI buses and devices"
msgstr "" msgstr "گذرگاه‌ها و دستگاه‌های I2C و SPI"
#: src/bare-metal/microcontrollers/embedded-hal.md #: src/bare-metal/microcontrollers/embedded-hal.md
msgid "" msgid ""
@ -18212,7 +18258,7 @@ msgstr ""
#: src/bare-metal/microcontrollers/probe-rs.md #: src/bare-metal/microcontrollers/probe-rs.md
msgid "Cargo integration" msgid "Cargo integration"
msgstr "" msgstr "ادغام Cargo"
#: src/bare-metal/microcontrollers/probe-rs.md #: src/bare-metal/microcontrollers/probe-rs.md
msgid "" msgid ""
@ -18272,6 +18318,8 @@ msgstr ""
#: src/bare-metal/microcontrollers/probe-rs.md #: src/bare-metal/microcontrollers/probe-rs.md
msgid "cargo-embed is a binary built using the probe-rs library." msgid "cargo-embed is a binary built using the probe-rs library."
msgstr "" msgstr ""
"این cargo-embed یک باینری است که با استفاده از کتابخانه probe-rs ساخته شده "
"است."
#: src/bare-metal/microcontrollers/probe-rs.md #: src/bare-metal/microcontrollers/probe-rs.md
msgid "" msgid ""
@ -18287,11 +18335,11 @@ msgstr ""
#: src/bare-metal/microcontrollers/debugging.md #: src/bare-metal/microcontrollers/debugging.md
msgid "In one terminal under `src/bare-metal/microcontrollers/examples/`:" msgid "In one terminal under `src/bare-metal/microcontrollers/examples/`:"
msgstr "" msgstr "در یک ترمینال تحت `src/bare-metal/microcontrollers/examples/`:"
#: src/bare-metal/microcontrollers/debugging.md #: src/bare-metal/microcontrollers/debugging.md
msgid "In another terminal in the same directory:" msgid "In another terminal in the same directory:"
msgstr "" msgstr "در ترمینال دیگری در همان دایرکتوری:"
#: src/bare-metal/microcontrollers/debugging.md #: src/bare-metal/microcontrollers/debugging.md
msgid "On gLinux or Debian:" msgid "On gLinux or Debian:"
@ -18299,7 +18347,7 @@ msgstr "در gLinux یا Debian:"
#: src/bare-metal/microcontrollers/debugging.md #: src/bare-metal/microcontrollers/debugging.md
msgid "In GDB, try running:" msgid "In GDB, try running:"
msgstr "" msgstr "در GDB، اجرا کنید:"
#: src/bare-metal/microcontrollers/other-projects.md #: src/bare-metal/microcontrollers/other-projects.md
#: src/bare-metal/aps/other-projects.md #: src/bare-metal/aps/other-projects.md
@ -18371,7 +18419,7 @@ msgstr ""
#: src/bare-metal/microcontrollers/other-projects.md #: src/bare-metal/microcontrollers/other-projects.md
msgid "It doesn't include any HALs." msgid "It doesn't include any HALs."
msgstr "" msgstr "این شامل هیچ HAL نیست."
#: src/bare-metal/microcontrollers/other-projects.md #: src/bare-metal/microcontrollers/other-projects.md
msgid "" msgid ""
@ -18381,12 +18429,13 @@ msgstr ""
#: src/bare-metal/microcontrollers/other-projects.md #: src/bare-metal/microcontrollers/other-projects.md
msgid "Cortex-M only." msgid "Cortex-M only."
msgstr "" msgstr "Cortex-M فقط."
#: src/bare-metal/microcontrollers/other-projects.md #: src/bare-metal/microcontrollers/other-projects.md
msgid "" msgid ""
"Google uses TockOS on the Haven microcontroller for Titan security keys." "Google uses TockOS on the Haven microcontroller for Titan security keys."
msgstr "" msgstr ""
"گوگل از TockOS در میکروکنترلر Haven برای کلیدهای امنیتی Titan استفاده می‌کند."
#: src/bare-metal/microcontrollers/other-projects.md #: src/bare-metal/microcontrollers/other-projects.md
msgid "" msgid ""
@ -18417,7 +18466,7 @@ msgstr ""
#: src/exercises/bare-metal/compass.md #: src/exercises/bare-metal/compass.md
msgid "Hints:" msgid "Hints:"
msgstr "" msgstr "نکته‌ها:"
#: src/exercises/bare-metal/compass.md #: src/exercises/bare-metal/compass.md
msgid "" msgid ""
@ -18426,6 +18475,10 @@ msgid ""
"microbit/) crates, as well as the [micro:bit hardware](https://tech.microbit." "microbit/) crates, as well as the [micro:bit hardware](https://tech.microbit."
"org/hardware/)." "org/hardware/)."
msgstr "" msgstr ""
"مستندات [`lsm303agr`](https://docs.rs/lsm303agr/latest/lsm303agr/) و "
"[`microbit-v2`](https://docs.rs/microbit-v2/latest/microbit/) به همراه "
"crateهای آن را بررسی کنید همانطور که [micro:bit hardware](https://tech."
"microbit.org/hardware/) را بررسی می‌کنید."
#: src/exercises/bare-metal/compass.md #: src/exercises/bare-metal/compass.md
msgid "" msgid ""
@ -18466,6 +18519,8 @@ msgid ""
"Download the [exercise template](../../comprehensive-rust-exercises.zip) and " "Download the [exercise template](../../comprehensive-rust-exercises.zip) and "
"look in the `compass` directory for the following files." "look in the `compass` directory for the following files."
msgstr "" msgstr ""
"این [الگوی تمرین](../../comprehensive-rust-exercises.zip) را دانلود کنید و "
"فایل‌های زیر را در دایرکتوری `compass` جستجو کنید."
#: src/exercises/bare-metal/compass.md src/exercises/bare-metal/rtc.md #: src/exercises/bare-metal/compass.md src/exercises/bare-metal/rtc.md
msgid "_src/main.rs_:" msgid "_src/main.rs_:"
@ -18473,7 +18528,7 @@ msgstr "_src/main.rs_:"
#: src/exercises/bare-metal/compass.md src/exercises/bare-metal/rtc.md #: src/exercises/bare-metal/compass.md src/exercises/bare-metal/rtc.md
msgid "_Cargo.toml_ (you shouldn't need to change this):" msgid "_Cargo.toml_ (you shouldn't need to change this):"
msgstr "" msgstr "_Cargo.toml_ (نیاز به تغییر ندارد):"
#: src/exercises/bare-metal/compass.md #: src/exercises/bare-metal/compass.md
msgid "_Embed.toml_ (you shouldn't need to change this):" msgid "_Embed.toml_ (you shouldn't need to change this):"
@ -18499,7 +18554,7 @@ msgstr ""
#: src/exercises/bare-metal/solutions-morning.md #: src/exercises/bare-metal/solutions-morning.md
msgid "Bare Metal Rust Morning Exercise" msgid "Bare Metal Rust Morning Exercise"
msgstr "" msgstr "تمرین صبحگاهی Bare Metal Rust"
#: src/exercises/bare-metal/solutions-morning.md #: src/exercises/bare-metal/solutions-morning.md
msgid "([back to exercise](compass.md))" msgid "([back to exercise](compass.md))"
@ -18574,6 +18629,9 @@ msgid ""
"privilege (exception levels on Arm CPUs, rings on x86), while application " "privilege (exception levels on Arm CPUs, rings on x86), while application "
"processors do." "processors do."
msgstr "" msgstr ""
"به طور کلی، میکروکنترلرها دارای MMU یا چندین سطح دسترسی (سطوح استثنا در "
"پردازنده‌های Arm، حلقه‌ها در x86) نیستند، در حالی که پردازنده‌های برنامه دارای "
"دسترسی هستند."
#: src/bare-metal/aps.md #: src/bare-metal/aps.md
msgid "" msgid ""
@ -18589,6 +18647,8 @@ msgstr ""
msgid "" msgid ""
"Before we can start running Rust code, we need to do some initialisation." "Before we can start running Rust code, we need to do some initialisation."
msgstr "" msgstr ""
"قبل از اینکه بتوانیم اجرای کد Rust را شروع کنیم، باید مقداری مقداردهی اولیه "
"را انجام دهیم."
#: src/bare-metal/aps/entry-point.md #: src/bare-metal/aps/entry-point.md
msgid "" msgid ""
@ -20669,6 +20729,9 @@ msgid ""
"channel for the new message. The thread can be blocked indefinitely if there " "channel for the new message. The thread can be blocked indefinitely if there "
"is nobody who reads from the channel." "is nobody who reads from the channel."
msgstr "" msgstr ""
"فراخوانی `send` تا زمانی که فضای کافی در کانال برای پیام جدید وجود داشته "
"باشد، thread کنونی را مسدود می‌کند. اگر کسی از کانال چیزی نخواند آنگاه thread "
"را می‌توان به طور نامحدود مسدود کرد."
#: src/concurrency/channels/bounded.md #: src/concurrency/channels/bounded.md
msgid "" msgid ""