@@ -13829,119 +13829,134 @@ msgid "`CxxString`"
1382913829msgstr "`CxxString`"
1383013830
1383113831#: src/android/interoperability/cpp/type-mapping.md:7
13832- #, fuzzy
1383313832msgid "`std::string`"
13834- msgstr "String "
13833+ msgstr "`std::string` "
1383513834
1383613835#: src/android/interoperability/cpp/type-mapping.md:8
1383713836msgid "`&[T]`/`&mut [T]`"
13838- msgstr ""
13837+ msgstr "`&[T]`/`&mut [T]` "
1383913838
1384013839#: src/android/interoperability/cpp/type-mapping.md:8
1384113840msgid "`rust::Slice`"
13842- msgstr ""
13841+ msgstr "`rust::Slice` "
1384313842
1384413843#: src/android/interoperability/cpp/type-mapping.md:9
1384513844msgid "`rust::Box<T>`"
13846- msgstr ""
13845+ msgstr "`rust::Box<T>` "
1384713846
1384813847#: src/android/interoperability/cpp/type-mapping.md:10
1384913848msgid "`UniquePtr<T>`"
13850- msgstr ""
13849+ msgstr "`UniquePtr<T>` "
1385113850
1385213851#: src/android/interoperability/cpp/type-mapping.md:10
1385313852msgid "`std::unique_ptr<T>`"
13854- msgstr ""
13853+ msgstr "`std::unique_ptr<T>` "
1385513854
1385613855#: src/android/interoperability/cpp/type-mapping.md:11
1385713856msgid "`rust::Vec<T>`"
13858- msgstr ""
13857+ msgstr "`rust::Vec<T>` "
1385913858
1386013859#: src/android/interoperability/cpp/type-mapping.md:12
1386113860msgid "`CxxVector<T>`"
13862- msgstr ""
13861+ msgstr "`CxxVector<T>` "
1386313862
1386413863#: src/android/interoperability/cpp/type-mapping.md:12
1386513864msgid "`std::vector<T>`"
13866- msgstr ""
13865+ msgstr "`std::vector<T>` "
1386713866
1386813867#: src/android/interoperability/cpp/type-mapping.md:16
1386913868msgid ""
1387013869"These types can be used in the fields of shared structs and the arguments "
1387113870"and returns of extern functions."
1387213871msgstr ""
13872+ "این typeها را میتوان در فیلدهای ساختارهای مشترک و آرگومانها و extern "
13873+ "functionها استفاده کرد."
1387313874
1387413875#: src/android/interoperability/cpp/type-mapping.md:18
1387513876msgid ""
1387613877"Note that Rust's `String` does not map directly to `std::string`. There are "
1387713878"a few reasons for this:"
1387813879msgstr ""
13880+ "توجه داشته باشید که `String` در Rust مستقیماً به `std::string` نگاشت نمیشود. "
13881+ "چند دلیل برای این وجود دارد:"
1387913882
1388013883#: src/android/interoperability/cpp/type-mapping.md:20
1388113884msgid ""
1388213885"`std::string` does not uphold the UTF-8 invariant that `String` requires."
1388313886msgstr ""
13887+ "`std::string` ثابت UTF-8 را که `String` به آن نیاز دارد را پشتیبانی نمیکند."
1388413888
1388513889#: src/android/interoperability/cpp/type-mapping.md:21
1388613890msgid ""
1388713891"The two types have different layouts in memory and so can't be passed "
1388813892"directly between languages."
1388913893msgstr ""
13894+ "این دو نوع طرحبندیهای متفاوتی در حافظه دارند و بنابراین نمیتوان آنها را "
13895+ "مستقیماً بین زبانها منتقل کرد."
1389013896
1389113897#: src/android/interoperability/cpp/type-mapping.md:23
13898+ #, fuzzy
1389213899msgid ""
1389313900"`std::string` requires move constructors that don't match Rust's move "
1389413901"semantics, so a `std::string` can't be passed by value to Rust."
1389513902msgstr ""
13903+ " `std::string` به سازندههای حرکتی نیاز دارد که با معنای حرکت Rust مطابقت "
13904+ "ندارند، بنابراین `std::string` نمیتواند با مقدار به Rust منتقل شود."
1389613905
1389713906#: src/android/interoperability/cpp/android-build-cpp.md:1
1389813907#: src/android/interoperability/cpp/android-cpp-genrules.md:1
1389913908#: src/android/interoperability/cpp/android-build-rust.md:1
13900- #, fuzzy
1390113909msgid "Building in Android"
13902- msgstr "Rust در اندروید"
13910+ msgstr "ساخت در اندروید"
1390313911
1390413912#: src/android/interoperability/cpp/android-build-cpp.md:3
1390513913msgid ""
1390613914"Create a `cc_library_static` to build the C++ library, including the CXX "
1390713915"generated header and source file."
1390813916msgstr ""
13917+ "یک `cc_library_static` برای ساخت کتابخانه ++C از جمله هدر و فایل منبع تولید "
13918+ "شده CXX ایجاد کنید."
1390913919
1391013920#: src/android/interoperability/cpp/android-build-cpp.md:8
1391113921#: src/android/interoperability/cpp/android-build-rust.md:10
1391213922msgid "\"libcxx_test_cpp\""
13913- msgstr ""
13923+ msgstr "\"libcxx_test_cpp\" "
1391413924
1391513925#: src/android/interoperability/cpp/android-build-cpp.md:9
1391613926msgid "\"cxx_test.cpp\""
13917- msgstr ""
13927+ msgstr "\"cxx_test.cpp\" "
1391813928
1391913929#: src/android/interoperability/cpp/android-build-cpp.md:11
1392013930msgid "\"cxx-bridge-header\""
13921- msgstr ""
13931+ msgstr "\"cxx-bridge-header\" "
1392213932
1392313933#: src/android/interoperability/cpp/android-build-cpp.md:12
1392413934#: src/android/interoperability/cpp/android-cpp-genrules.md:10
1392513935msgid "\"libcxx_test_bridge_header\""
13926- msgstr ""
13936+ msgstr "\"libcxx_test_bridge_header\" "
1392713937
1392813938#: src/android/interoperability/cpp/android-build-cpp.md:14
1392913939#: src/android/interoperability/cpp/android-cpp-genrules.md:19
1393013940msgid "\"libcxx_test_bridge_code\""
13931- msgstr ""
13941+ msgstr "\"libcxx_test_bridge_code\" "
1393213942
1393313943#: src/android/interoperability/cpp/android-build-cpp.md:20
1393413944msgid ""
1393513945"Point out that `libcxx_test_bridge_header` and `libcxx_test_bridge_code` are "
1393613946"the dependencies for the CXX-generated C++ bindings. We'll show how these "
1393713947"are setup on the next slide."
1393813948msgstr ""
13949+ "به این نکته اشاره کنید که `libcxx_test_bridge_header` و "
13950+ "`libcxx_test_bridge_code` وابستگیهایی برای پیوندهای ++C تولید شده توسط CXX "
13951+ "هستند. نحوه تنظیم اینها را در اسلاید بعدی نشان خواهیم داد."
1393913952
1394013953#: src/android/interoperability/cpp/android-build-cpp.md:23
1394113954msgid ""
1394213955"Note that you also need to depend on the `cxx-bridge-header` library in "
1394313956"order to pull in common CXX definitions."
1394413957msgstr ""
13958+ "توجه داشته باشید که برای ایجاد تعاریف رایج CXX باید به کتابخانه `cxx-bridge-"
13959+ "header` وابسته باشید."
1394513960
1394613961#: src/android/interoperability/cpp/android-build-cpp.md:25
1394713962msgid ""
@@ -13951,175 +13966,201 @@ msgid ""
1395113966"that link with the class so that students know where they can find these "
1395213967"instructions again in the future."
1395313968msgstr ""
13969+ "مستندات کامل برای استفاده از CXX در Android را میتوانید در این آدرس پیدا "
13970+ "کنید [the Android docs](https://source.android.com/docs/setup/build/rust/"
13971+ "building-rust-modules/android-rust-patterns#rust-cpp-interop-using-cxx). "
13972+ "ممکن است بخواهید آن پیوند را با کلاس به اشتراک بگذارید تا دانشآموزان بدانند "
13973+ "که در آینده میتوانند این دستورالعملها را دوباره پیدا کنند."
1395413974
1395513975#: src/android/interoperability/cpp/android-cpp-genrules.md:3
1395613976msgid ""
1395713977"Create two genrules: One to generate the CXX header, and one to generate the "
1395813978"CXX source file. These are then used as inputs to the `cc_library_static`."
1395913979msgstr ""
13980+ "دو نوع ژانر ایجاد کنید: یکی برای تولید هدر CXX و دیگری برای تولید فایل منبع "
13981+ "CXX. سپس از اینها به عنوان ورودی `cc_library_static` استفاده میشود."
1396013982
1396113983#: src/android/interoperability/cpp/android-cpp-genrules.md:7
13984+ #, fuzzy
1396213985msgid ""
1396313986"// Generate a C++ header containing the C++ bindings\n"
1396413987"// to the Rust exported functions in lib.rs.\n"
1396513988msgstr ""
13989+ "// Generate a C++ header containing the C++ bindings\n"
13990+ "// to the Rust exported functions in lib.rs.\n"
1396613991
1396713992#: src/android/interoperability/cpp/android-cpp-genrules.md:11
1396813993#: src/android/interoperability/cpp/android-cpp-genrules.md:20
1396913994msgid "\"cxxbridge\""
13970- msgstr ""
13995+ msgstr "\"cxxbridge\" "
1397113996
1397213997#: src/android/interoperability/cpp/android-cpp-genrules.md:12
1397313998msgid "\"$(location cxxbridge) $(in) --header > $(out)\""
13974- msgstr ""
13999+ msgstr "\"$(location cxxbridge) $(in) --header > $(out)\" "
1397514000
1397614001#: src/android/interoperability/cpp/android-cpp-genrules.md:13
1397714002#: src/android/interoperability/cpp/android-cpp-genrules.md:22
1397814003#: src/android/interoperability/cpp/android-build-rust.md:8
1397914004msgid "\"lib.rs\""
13980- msgstr ""
14005+ msgstr "\"lib.rs\" "
1398114006
1398214007#: src/android/interoperability/cpp/android-cpp-genrules.md:14
1398314008msgid "\"lib.rs.h\""
13984- msgstr ""
14009+ msgstr "\"lib.rs.h\" "
1398514010
1398614011#: src/android/interoperability/cpp/android-cpp-genrules.md:16
14012+ #, fuzzy
1398714013msgid "// Generate the C++ code that Rust calls into.\n"
13988- msgstr ""
14014+ msgstr "// Generate the C++ code that Rust calls into.\n "
1398914015
1399014016#: src/android/interoperability/cpp/android-cpp-genrules.md:21
1399114017msgid "\"$(location cxxbridge) $(in) > $(out)\""
13992- msgstr ""
14018+ msgstr "\"$(location cxxbridge) $(in) > $(out)\" "
1399314019
1399414020#: src/android/interoperability/cpp/android-cpp-genrules.md:23
1399514021msgid "\"lib.rs.cc\""
13996- msgstr ""
14022+ msgstr "\"lib.rs.cc\" "
1399714023
1399814024#: src/android/interoperability/cpp/android-cpp-genrules.md:29
1399914025msgid ""
1400014026"The `cxxbridge` tool is a standalone tool that generates the C++ side of the "
1400114027"bridge module. It is included in Android and available as a Soong tool."
1400214028msgstr ""
14029+ "ابزار`cxxbridge` یک ابزار مستقل است که سمت ++C ماژول پل را تولید میکند. در "
14030+ "Android گنجانده شده و به عنوان ابزار Soong در دسترس است."
1400314031
1400414032#: src/android/interoperability/cpp/android-cpp-genrules.md:31
1400514033msgid ""
1400614034"By convention, if your Rust source file is `lib.rs` your header file will be "
1400714035"named `lib.rs.h` and your source file will be named `lib.rs.cc`. This naming "
1400814036"convention isn't enforced, though."
1400914037msgstr ""
14038+ "طبق قرارداد، اگر فایل منبع Rust شما `lib.rs` باشد، فایل header شما `lib.rs."
14039+ "h` و فایل منبع شما `lib.rs.cc` نام خواهد داشت. اگرچه این قرارداد نامگذاری "
14040+ "اجرا نمیشود."
1401014041
1401114042#: src/android/interoperability/cpp/android-build-rust.md:3
1401214043msgid ""
1401314044"Create a `rust_binary` that depends on `libcxx` and your `cc_library_static`."
1401414045msgstr ""
14046+ "یک`rust_binary` ایجاد کنید که به `libcxx` و `cc_library_static` شما بستگی "
14047+ "دارد."
1401514048
1401614049#: src/android/interoperability/cpp/android-build-rust.md:7
1401714050msgid "\"cxx_test\""
14018- msgstr ""
14051+ msgstr "\"cxx_test\" "
1401914052
1402014053#: src/android/interoperability/cpp/android-build-rust.md:9
1402114054msgid "\"libcxx\""
14022- msgstr ""
14055+ msgstr "\"libcxx\" "
1402314056
1402414057#: src/android/interoperability/java.md:1
1402514058msgid "Interoperability with Java"
14026- msgstr ""
14059+ msgstr "قابلیت همکاری با جاوا "
1402714060
1402814061#: src/android/interoperability/java.md:3
1402914062msgid ""
1403014063"Java can load shared objects via [Java Native Interface (JNI)](https://en."
1403114064"wikipedia.org/wiki/Java_Native_Interface). The [`jni` crate](https://docs.rs/"
1403214065"jni/) allows you to create a compatible library."
1403314066msgstr ""
14067+ "جاوا میتواند objectهای مشترک را از طریق [واسط بومی جاوا [Java Native "
14068+ "Interface (JNI)](https://en.wikipedia.org/wiki/Java_Native_Interface) "
14069+ "بارگیری کند. [`jni` crate](https://docs.rs/jni/) به شما امکان می دهد یک "
14070+ "کتابخانه سازگار ایجاد کنید."
1403414071
1403514072#: src/android/interoperability/java.md:8
1403614073msgid "First, we create a Rust function to export to Java:"
14037- msgstr ""
14074+ msgstr "ابتدا یک تابع Rust برای export به Java ایجاد میکنیم: "
1403814075
1403914076#: src/android/interoperability/java.md:10
1404014077msgid "_interoperability/java/src/lib.rs_:"
14041- msgstr ""
14078+ msgstr "_interoperability/java/src/lib.rs_: "
1404214079
1404314080#: src/android/interoperability/java.md:13
14081+ #, fuzzy
1404414082msgid "//! Rust <-> Java FFI demo.\n"
14045- msgstr ""
14083+ msgstr "//! Rust <-> Java FFI demo.\n "
1404614084
1404714085#: src/android/interoperability/java.md:18
14086+ #, fuzzy
1404814087msgid "/// HelloWorld::hello method implementation.\n"
14049- msgstr ""
14088+ msgstr "/// HelloWorld::hello method implementation.\n "
1405014089
1405114090#: src/android/interoperability/java.md:21
1405214091msgid "\"system\""
14053- msgstr ""
14092+ msgstr "\"system\" "
1405414093
1405514094#: src/android/interoperability/java.md:27
1405614095msgid "\"Hello, {input}!\""
14057- msgstr ""
14096+ msgstr "\"Hello, {input}!\" "
1405814097
1405914098#: src/android/interoperability/java.md:33
1406014099#: src/android/interoperability/java.md:63
1406114100msgid "_interoperability/java/Android.bp_:"
14062- msgstr ""
14101+ msgstr "_interoperability/java/Android.bp_: "
1406314102
1406414103#: src/android/interoperability/java.md:37
1406514104#: src/android/interoperability/java.md:70
1406614105msgid "\"libhello_jni\""
14067- msgstr ""
14106+ msgstr "\"libhello_jni\" "
1406814107
1406914108#: src/android/interoperability/java.md:38
1407014109#: src/android/interoperability/java.md:53
1407114110msgid "\"hello_jni\""
14072- msgstr ""
14111+ msgstr "\"hello_jni\" "
1407314112
1407414113#: src/android/interoperability/java.md:40
1407514114msgid "\"libjni\""
14076- msgstr ""
14115+ msgstr "\"libjni\" "
1407714116
1407814117#: src/android/interoperability/java.md:44
1407914118msgid "We then call this function from Java:"
14080- msgstr ""
14119+ msgstr "سپس این تابع را از جاوا فراخوانی می کنیم: "
1408114120
1408214121#: src/android/interoperability/java.md:46
1408314122msgid "_interoperability/java/HelloWorld.java_:"
14084- msgstr ""
14123+ msgstr "_interoperability/java/HelloWorld.java_: "
1408514124
1408614125#: src/android/interoperability/java.md:67
1408714126msgid "\"helloworld_jni\""
14088- msgstr ""
14127+ msgstr "\"helloworld_jni\" "
1408914128
1409014129#: src/android/interoperability/java.md:68
14091- #, fuzzy
1409214130msgid "\"HelloWorld.java\""
14093- msgstr "سلام دنیا"
14131+ msgstr "سلام دنیا\"HelloWorld.java\" "
1409414132
1409514133#: src/android/interoperability/java.md:69
14096- #, fuzzy
1409714134msgid "\"HelloWorld\""
14098- msgstr "سلام دنیا "
14135+ msgstr "\"HelloWorld\" "
1409914136
1410014137#: src/android/interoperability/java.md:74
1410114138msgid "Finally, you can build, sync, and run the binary:"
14102- msgstr ""
14139+ msgstr "در نهایت، میتوانید باینری را بسازید، همگامسازی کنید و اجرا کنید: "
1410314140
1410414141#: src/exercises/android/morning.md
1410514142msgid ""
1410614143"This is a group exercise: We will look at one of the projects you work with "
1410714144"and try to integrate some Rust into it. Some suggestions:"
1410814145msgstr ""
14146+ "این یک تمرین گروهی است: ما به یکی از پروژههایی که با آن کار میکنید نگاه "
14147+ "میکنیم و سعی میکنیم مقداری Rust را در آن ادغام کنیم. چند پیشنهاد:"
1410914148
1411014149#: src/exercises/android/morning.md
1411114150msgid "Call your AIDL service with a client written in Rust."
14112- msgstr ""
14151+ msgstr "با سرویس AIDL خود با کلاینت که در Rust نوشته شده است تماس بگیرید. "
1411314152
1411414153#: src/exercises/android/morning.md
1411514154msgid "Move a function from your project to Rust and call it."
14116- msgstr ""
14155+ msgstr "یک تابع را از پروژه خود به Rust منتقل کنید و آن را فراخوانی کنید. "
1411714156
1411814157#: src/exercises/android/morning.md
1411914158msgid ""
1412014159"No solution is provided here since this is open-ended: it relies on someone "
1412114160"in the class having a piece of code which you can turn in to Rust on the fly."
1412214161msgstr ""
14162+ "هیچ راهحلی در اینجا ارائه نشده است زیرا این مورد باز است: به فردی در کلاس "
14163+ "متکی است که یک قطعه کد دارد که می توانید آن را به Rust on fly تبدیل کنید."
1412314164
1412414165#: src/chromium.md
1412514166msgid "Welcome to Rust in Chromium"
0 commit comments