Ilova A: Kalit so'zlar
Quyidagi ro'yxatda Rust tili tomonidan joriy yoki kelajakda foydalanish uchun ajratilgan kalit so'zlar mavjud. Shunday qilib, ularni identifikator sifatida ishlatib bo'lmaydi (raw identifikatorlar bo'limida muhokama qilinadigan “Raw identifikatorlardan” tashqari) Identifikatorlar - bu funksiyalar, o'zgaruvchilar, parametrlar, struct field, modullar, cratelar, konstantalar, macroslar, statik qiymatlar, atributlar, turlar, traitlar yoki lifetimelarining nomlari.
Hozirda foydalanilayotgan kalit so'zlar
Quyida hozirda foydalanilayotgan kalit so‘zlar ro‘yxati keltirilgan, ularning funksiyalari tasvirlangan.
as
- primitiv castingni amalga oshiring, elementni o'z ichiga olgan o'ziga xos traitni ajrating yokiuse
statementaridagi elementlarning nomini o'zgartiringasync
- joriy threadni bloklash o'rnigaFuture
ni return qilingawait
-Future
natijasi tayyor bo'lgunga qadar executionni to'xtatib turingbreak
- zudlik bilan loopdan chiqingconst
- konstanta elementlarni yoki konstanta raw pointerlarni aniqlangcontinue
- keyingi sikl iteratsiyasiga davom etingcrate
- modul yo'lida, crate rootga ishora qiladidyn
- trait objectga dinamik jo'natishelse
-if
vaif let
uchun zaxira control flow konstruksiyalarienum
- enumerationni aniqlashextern
- tashqi funksiya yoki o‘zgaruvchini bog‘lashfalse
- Boolean false(noto'g'ri) so'zfn
- funksiya yoki funktsiya pointer turini aniqlangfor
- iteratordagi elementlarni ko'rib chiqing, implement trait yoki yuqori darajali lifetimeni belgilangif
- shartli expression natijasiga asoslangan branchimpl
- o'ziga inherent yoki trait funksionalligini implementin
-for
sikl sintaksisining bir qismilet
- o'zgaruvchini bog'lashloop
- shartsiz loopmatch
- qiymatni patternlarga moslashtirishmod
- modulni aniqlashmove
- make a closure take ownership of all its capturesmut
- reference, raw pointerlar yoki pattern bindingdagi o'zgaruvchanlikni bildiradipub
- struct fieldlarida,impl
bloklarida yoki modullarda ommaviy ko'rinishni bildiradiref
- reference orqali bog'lashreturn
- funksiyadan qaytish(return)Self
- biz belgilayotgan yoki implement qilayotgan tur uchun turdagi aliasself
- metod mavzusi yoki joriy modulstatic
- global o'zgaruvchi yoki butun dasturning bajarilishi uchun lifetimestruct
- structurani aniqlashsuper
- joriy modulning parent modulitrait
- traitni aniqlashtrue
- Boolean true(to'g'ri) so'ztype
- turdagi alias yoki associated turni aniqlashunion
- define a union; is only a keyword when used in a union declarationunsafe
- xavfli kod, funksiyalar, traitlar yoki implementationlarni bildiradiuse
- bring symbols into scopewhere
- denote clauses that constrain a typewhile
- expression natijasi asosida shartli ravishda sikl
Kelajakda foydalanish uchun ajratilgan kalit so'zlar
Quyidagi kalit so'zlar hali hech qanday funksiyaga ega emas, lekin kelajakda foydalanish uchun Rust tomonidan zahiralangan.
abstract
become
box
do
final
macro
override
priv
try
typeof
unsized
virtual
yield
Raw identifikatorlar
Raw identifikatorlar odatda ruxsat berilmaydigan kalit so'zlardan foydalanish imkonini beruvchi sintaksisdir. Kalit so‘z oldiga r#
qo‘yish orqali raw identifikatordan foydalanasiz.
Masalan, match
kalit so'zdir. Agar siz o'z nomi sifatida match
dan foydalanadigan quyidagi funksiyani kompilyatsiya qilmoqchi bo'lsangiz:
Fayl nomi: src/main.rs
fn match(needle: &str, haystack: &str) -> bool {
haystack.contains(needle)
}
you’ll get this error:
error: expected identifier, found keyword `match`
--> src/main.rs:4:4
|
4 | fn match(needle: &str, haystack: &str) -> bool {
| ^^^^^ expected identifier, found keyword
Xato, funksiya identifikatori sifatida match
kalit so‘zidan foydalana olmasligingizni ko‘rsatadi. Funksiya nomi sifatida match
dan foydalanish uchun siz raw identifikator sintaksisidan foydalanishingiz kerak, masalan:
Fayl nomi: src/main.rs
fn r#match(needle: &str, haystack: &str) -> bool { haystack.contains(needle) } fn main() { assert!(r#match("foo", "foobar")); }
Ushbu kod hech qanday xatosiz kompilyatsiya qilinadi. Funksiya nomidagi r#
prefiksi uning taʼrifida, shuningdek, funksiya main
da chaqirilgan joyiga eʼtibor bering.
Raw identifikatorlari identifikator sifatida tanlagan har qanday so'zdan foydalanishga imkon beradi, hatto bu so'z zahiradagi kalit so'z bo'lsa ham. Bu bizga identifikator nomlarini tanlashda ko'proq erkinlik beradi, shuningdek, bu so'zlar kalit so'zlar bo'lmagan tilda yozilgan dasturlar bilan integratsiyalashish imkonini beradi. Bunga qo'shimcha ravishda, raw identifikatorlar sizga cratetagidan boshqa Rust nashrida yozilgan kutubxonalardan foydalanish imkonini beradi. Misol uchun, try
2015 yilgi nashrda kalit so'z emas, balki 2018 yilgi nashrda mavjud. Agar siz 2015-yil nashri yordamida yozilgan kutubxonaga bogʻliq boʻlsangiz va try
funksiyasiga ega boʻlsangiz, bu funksiyani 2018-yilgi nashr kodingizdan chaqirish uchun r#try
raw identifikator sintaksisidan foydalanishingiz kerak boʻladi.
Nashrlar haqida qo'shimcha ma'lumot E ilovasiga qarang.