เบเบฒเบเบเปเบญเบเบเบฒเบชเบฒเบเบฒเบเบเบฝเบเปเบเบฅเปเบเบฅเบกเบฅเบฐเบเบปเบ Rust 1.53, เบชเปเบฒเบเบเบฑเปเบเบเบถเปเบเปเบเบเปเบเบเบเบฒเบ Mozilla, เปเบเปเปเบเบเบฑเบเบเบธเบเบฑเบเปเบเปเบเบทเบเบเบฑเบเบเบฐเบเบฒเบเบฒเบเปเบเปเบเบฒเบเบญเบธเบเบฐเบเปเบฒเบเบญเบเบญเบปเบเบเบฒเบเปเบญเบเบฐเบฅเบฒเบเบเบตเปเบเปเปเบซเบงเบฑเบเบเบปเบเบเปเบฒเปเบฅ Rust Foundation, เปเบเปเบเบทเบเบเบฑเบเบเบตเบกเบกเบฒ. เบเบฒเบชเบฒเบชเบธเบกเปเบชเปเบเบงเบฒเบกเบเบญเบเปเบเบเบญเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒ, เบชเบฐเบซเบเบญเบเบเบฒเบเบเบธเปเบกเบเบญเบเบเบงเบฒเบกเบเบปเบเบเปเบฒเบญเบฑเบเบเบฐเปเบเบกเบฑเบ, เปเบฅเบฐเบชเบฐเบซเบเบญเบเบงเบดเบเบตเบเบฒเบเปเบเบทเปเบญเบเบฑเบเบฅเบธเบงเบฝเบเบเบฒเบเบเบฐเบซเบเบฒเบเบชเบนเบเปเบเบเบเปเปเบกเบตเบเบฒเบเบเปเบฒเปเบเปเปเบเบทเปเบญเบเปเบเบฑเบเบเบตเปเปเบซเบเบทเปเบญเบซเบผเบท runtime (runtime เบซเบผเบธเบเบฅเบปเบเปเบเบฑเบเบเบทเปเบเบเบฒเบเปเบเบทเปเบญเบเบเบปเปเบเปเบฅเบฐเบเบฒเบเบเปเบฒเบฅเบธเบเบฎเบฑเบเบชเบฒเบซเปเบญเบเบชเบฐเบซเบกเบธเบเบกเบฒเบเบเบฐเบเบฒเบ).
เบเบฒเบเบเบฑเบเบเบฒเบเบเบงเบฒเบกเบเบปเบเบเปเบฒเบญเบฑเบเบเบฐเปเบเบกเบฑเบเบเบญเบ Rust เบเปเบฒเบเบฑเบเบเบงเบฒเบกเบเบดเบเบเบฒเบเปเบเปเบงเบฅเบฒเบเบตเป manipulating pointers เปเบฅเบฐเบเปเบญเบเบเบฑเบเบเบฑเบเบซเบฒเบเบตเปเปเบเบตเบเบเบฒเบเบเบฒเบเบซเบกเบนเบเปเบเปเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบฅเบฐเบเบฑเบเบเปเปเบฒ, เปเบเบฑเปเบ: เบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบฒเบเบเบทเปเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบซเบผเบฑเบเบเบฒเบเบเบตเปเบกเบฑเบเปเบเปเบเบทเบเบเบปเบเบเปเบญเบ, null pointer dereferences, buffer overruns, เปเบฅเบฐเบญเบทเปเบเป. เปเบเบทเปเบญเปเบเบเบขเบฒเบเบซเปเบญเบเบชเบฐเบซเบกเบธเบ, เบฎเบฑเบเบเบฐเบเบฑเบเบเบฒเบเบเบฐเบเบญเบเปเบฅเบฐเบเบฒเบเบเบธเปเบกเบเบญเบเบเบฒเบเปเบเบดเปเบเบเบฒเบญเบฒเปเบช, เปเบเบเบเบฒเบเบเปเบฒเบฅเบฑเบเบเบฑเบเบเบฐเบเบฒเบเบนเปเบเบฑเบเบเบฒเบเบเบธเบเบชเบดเบเบเปเบฒ. เบเบฑเบเปเบเบฑเบ crates.io เปเบเปเบฎเบฑเบเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเบฑเบเปเบเบปเปเบฒเบเบฒเบเบซเปเบญเบเบชเบฐเบซเบกเบธเบ.
เบเบฐเบงเบฑเบเบเบฐเบเปเบฒเบเบปเปเบเบเป:
- เบชเปเบฒเบฅเบฑเบ arrays, เบฅเบฑเบเบชเบฐเบเบฐ IntoIterator เปเบเปเบเบทเบเบเบฐเบเบดเบเบฑเบ, เปเบเบดเปเบเบเปเบงเบเปเบซเปเบเปเบฒเบเบชเบฒเบกเบฒเบเบเบฑเบเบฅเปเบฒเบเบฑเบเบเบญเบเบญเบปเบเบเบฐเบเบญเบ array เปเบเบเบเปเบฒ: เบชเปเบฒเบฅเบฑเบ i เปเบ [1, 2, 3] { .. }
เบกเบฑเบเบเบฑเบเบชเบฒเบกเบฒเบเบเปเบฒเบ arrays เปเบเบซเบฒเบงเบดเบเบตเบเบฒเบเบเบตเปเบเบญเบกเบฎเบฑเบ iterators, เบเบปเบงเบขเปเบฒเบ: เปเบซเป set = BTreeSet::from_iter([1, 2, 3]); เบชเปเบฒเบฅเบฑเบ (a, b) เปเบ some_iterator.chain([1]).zip([1, 2, 3]) { .. }
เบเปเบญเบเบซเบเปเบฒเบเบตเป, IntoIterator เปเบเปเบเบทเบเบเบฐเบเบดเบเบฑเบเบเบฝเบเปเบเปเบชเปเบฒเบฅเบฑเบเบเบฒเบเบญเปเบฒเบเบญเบดเบ array, i.e. to iterate over values โโเบเปเบญเบเบเบฒเบเปเบเปเบเบฒเบเบญเปเบฒเบเบญเบตเบ (โ&[1, 2, 3]โ) เบซเบผเบท โ[1, 2, 3].iter()โ. เบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบญเบ IntoIterator เบชเปเบฒเบฅเบฑเบ arrays เบเบทเบเบเบฑเบเบเบงเบฒเบเปเบเบเบเบฑเบเบซเบฒเบเบงเบฒเบกเปเบเบปเปเบฒเบเบฑเบเปเบเปเบเบตเปเปเบเบตเบเบเบฒเบเบเบฒเบเปเบเบ compiler เบเปเบญเบเบซเบเปเบฒเบเบตเปเบเบฒเบ array.into_iter() เปเบเบฑเบ (&array).into_iter(). เบเบฑเบเบซเบฒเปเบซเบผเบปเปเบฒเบเบตเปเปเบเปเบฎเบฑเบเบเบฒเบเปเบเปเปเบเบเปเบงเบเบเบฒเบเปเบเปเปเบ - เบเบญเบกเบเบตเบงเปเบเบตเบเบฐเบชเบทเบเบเปเปเบเปเบฝเบ array.into_iter() เปเบเบฑเบ (&array).into_iter() เบเบทเบเบฑเบเบงเปเบฒเบเปเปเบกเบตเบเบฒเบเบเบฑเบเบเบฑเปเบเบเบฐเบเบดเบเบฑเบเบฅเบฑเบเบชเบฐเบเบฐ IntoIterator, เปเบเปเบงเปเบฒเบเบฝเบเปเบเปเปเบกเบทเปเบญเปเบเบซเบฒเบงเบดเบเบตเบเบฒเบเปเบเบเปเบเป ".into_iter(. )" syntax เปเบฅเบฐเปเบเบเบเปเปเบกเบตเบเบฒเบเบชเปเบฒเบเบฑเบเบเบฑเบเบเบฒเบเปเบเปเบเบฎเบนเบเปเบเบ "in [1, 2, 3]", "iter.zip([1, 2, 3])", "IntoIterator::into_iter([1, 2, 3]] )".
- เบกเบฑเบเปเบเบฑเบเปเบเปเบเปเบเบตเปเบเบฐเบฅเบฐเบเบธเบเบฒเบเบชเบฐเปเบเบเบญเบญเบ "|" (เบเบฒเบเบเปเบฒเปเบเบตเบเบเบฒเบเบเบฒเบกเปเบซเบเบเบปเบ OR) เปเบเบชเปเบงเบเปเบเบเบถเปเบเบเบญเบเปเบกเปเปเบเบ, เบเบปเบงเบขเปเบฒเบ, เปเบเบเบเบตเปเบเบฐเปเบเบฑเบ โSome(1) | Some(2)" เบเบญเบเบเบตเปเบเปเบฒเบเบชเบฒเบกเบฒเบเบเบฝเบ "Some(1 | 2)": match results { Ok(Some(1 | 2)) => {.. } Err(MyError { kind: FileNotFound | PermissionDenied, .. }) => { .. } _ => { .. } }
- เบเบฒเบเบเปเบฒเปเบเปเบเบปเบงเบญเบฑเบเบชเบญเบเบเบตเปเบเปเปเปเบกเปเบ ASCII เปเบเบเบปเบงเบฅเบฐเบเบธเปเบกเปเบเบญเบฐเบเบธเบเบฒเบ, เบฅเบงเบกเบเบฑเบเบเบปเบงเบญเบฑเบเบชเบญเบเปเบซเปเบเบเบฒเบเบเบตเปเบเปเบฒเบเบปเบเปเบงเปเปเบเบเปเปเบเปเบฒเบเบปเบเบเบญเบ Unicode UAX 31, เปเบเปเบเปเปเบฅเบงเบกเปเบญเบปเบฒเบเบปเบงเบญเบฑเบเบชเบญเบ emoji. เบเปเบฒเบเปเบฒเบเปเบเปเบเบปเบงเบญเบฑเบเบชเบญเบเบเบตเปเปเบเบเบเปเบฒเบเบเบฑเบเปเบเปเบเปเบฒเบเบเบทเบเบฑเบ, compiler เบเบฐเบญเบญเบเบเปเบฒเปเบเบทเบญเบ. const BLร HAJ: &str = "๐ฆ" ; struct ไบบ { ๅๅญ: String, } เปเบซเป ฮฑ = 1; let๏ฝos = 2; เบเบณเปเบเบทเบญเบ: เบเบนเปเบเบปเบงเบฅเบฐเบเบธเบเบทเบงเปเบฒเบชเบฑเบเบชเบปเบเบฅเบฐเบซเบงเปเบฒเบ '๏ฝ' เปเบฅเบฐ 's'
- เบชเปเบงเบเปเบซเบกเปเบเบญเบ APIs เปเบเปเบเบทเบเปเบญเบเปเบเบซเบฒเบเบฐเปเบเบเบเบงเบฒเบกเบซเบกเบฑเปเบเบเบปเบ, เบฅเบงเบกเบเบฑเบเบเบงเบฒเบกเบซเบกเบฑเปเบเบเบปเบเบเบฑเปเบเบเปเปเปเบเบเบตเป:
- array::from_ref
- array::from_mut
- AtomicBool::fetch_update
- AtomicPtr::fetch_update
- BTreeSet::เบฎเบฑเบเบชเบฒ
- BTreeMap::เบฎเบฑเบเบชเบฒ
- BufReader::seek_relative
- cmp::min_by
- cmp::min_by_key
- cmp::max_by
- cmp::max_by_key
- DebugStruct::finish_non_exhaustive
- เปเบฅเบเบฐเปเบงเบฅเบฒ::ZERO
- เปเบฅเบเบฐเปเบงเบฅเบฒ::MAX
- เปเบฅเบเบฐเปเบงเบฅเบฒ::is_zero
- เปเบฅเบเบฐเปเบงเบฅเบฒ::saturating_add
- เปเบฅเบเบฐเปเบงเบฅเบฒ::saturating_sub
- เปเบฅเบเบฐเปเบงเบฅเบฒ::saturating_mul
- f32::is_subnormal
- f64::is_subnormal
- IntoIterator เบชเปเบฒเบฅเบฑเบ arrays
- {integer}::BITS
- io::เบเบดเบเบเบฒเบ::เบเปเปเบฎเบญเบเบฎเบฑเบ
- NonZero*::leading_zeros
- NonZero*::trailing_zeros
- เบเบฒเบเปเบฅเบทเบญเบ:: เปเบชเป
- เบเบฒเบเบชเบฑเปเบเบเบทเป::is_eq
- เบเบฒเบเบชเบฑเปเบเบเบทเป::is_ne
- เบเบฒเบเบชเบฑเปเบเบเบทเป::is_lt
- เบเบฒเบเบชเบฑเปเบเบเบทเป::is_gt
- เบเบณเบฅเบฑเบเบชเบฑเปเบเบเบทเป::is_le
- เบเบฒเบเบชเบฑเปเบเบเบทเป::is_ge
- OsStr::make_ascii_เบเบปเบงเบเบดเบกเบเปเบญเบ
- OsStr::make_ascii_เบเบปเบงเบเบดเบกเปเบซเบเป
- OsStr::to_ascii_เบเบปเบงเบเบดเบกเบเปเบญเบ
- OsStr::to_ascii_เบเบปเบงเบเบดเบกเปเบซเบเป
- OsStr::is_ascii
- OsStr::eq_ignore_ascii_case
- เบชเบฒเบกเบฒเบเปเบเบดเปเบเปเบเป::peek_mut
- Rc::increment_strong_count
- Rc::decrement_strong_count
- slice::IterMut::as_slice
- AsRef<[T]> เบชเปเบฒเบฅเบฑเบ slice::IterMut
- impl SliceIndex เบชเปเบฒเบฅเบฑเบ (Bound , เบเบนเบเบกเบฑเบ )
- Vec::extend_from_within
- เบฅเบฐเบเบฑเบเบเบตเบชเบฒเบกเบเบญเบเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบชเปเบฒเบฅเบฑเบเปเบงเบเบต wasm64-unknown-unknown เปเบเปเบเบทเบเบเบฐเบเบดเบเบฑเบ. เบฅเบฐเบเบฑเบเบเบตเบชเบฒเบกเบเปเบฝเบงเบเปเบญเบเบเบฑเบเบเบฒเบเบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบเบทเปเบเบเบฒเบ, เปเบเปเบเปเปเบกเบตเบเบฒเบเบเบปเบเบชเบญเบเบญเบฑเบเบเบฐเปเบเบกเบฑเบ, เบเบฒเบเปเบเบตเบเปเบเปเบเบฒเบเบเปเปเบชเปเบฒเบเบขเปเบฒเบเปเบเบฑเบเบเบฒเบเบเบฒเบ, เบซเบผเบทเบเบงเบเปเบเบดเปเบเบงเปเบฒเบฅเบฐเบซเบฑเบเบชเบฒเบกเบฒเบเบชเปเบฒเบเปเบเป.
- เบเบนเปเบเบฑเบเบเบฒเบเบเบธเบเบชเบดเบเบเปเบฒเปเบเปเบเบทเบเบเปเบฒเบเปเบเปเบเปเบเบทเป "เบเบปเปเบเบเป" เบชเปเบฒเบฅเบฑเบเบชเบฒเบเบฒเบเบปเปเบเบเปเบเบญเบเบเปเบญเบเปเบเบฑเบเบกเปเบฝเบ Git (HEAD) เปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ. Dependencies host เปเบ repositories เบเบตเปเปเบเปเบเบทเป main เปเบเบ master เบญเบตเบเบเปเปเปเบ เบเปเปเบเปเบญเบเบกเบตเบชเบฒเบเบฒ = "main" เบเบตเปเบเบฐ configured.
- เปเบ compiler, เบเปเปเบเปเบฒเบเบปเบเบชเปเบฒเบฅเบฑเบเบชเบฐเบเบฑเบเบเปเบฒเปเบชเบธเบเบเบตเปเบเบญเบ LLVM เปเบเปเบเบทเบเบเบปเบเบเบถเปเบเบกเบฒเปเบเบฑเบ LLVM 10.
ะะพะฟะพะปะฝะธัะตะปัะฝะพ ะผะพะถะฝะพ ะพัะผะตัะธัั ะฟัะตะดะพััะฐะฒะปะตะฝะธะต ัะธะฝะฐะฝัะธัะพะฒะฐะฝะธั ัะฐะฑะพัั ะฟะพ ัะฐะทะฒะธัะธั ะธะฝัะตะณัะฐัะธะธ ะฒ ัะดัะพ Linux ััะตะดััะฒ ะดะปั ัะฐะทัะฐะฑะพัะบะธ ะบะพะผะฟะพะฝะตะฝัะพะฒ ะฝะฐ ัะทัะบะต Rust. ะ ะฐะฑะพัะฐ ะฑัะดะตั ะฒะตััะธัั ะฒ ัะฐะผะบะฐั ะฟัะพะตะบัะฐ Prossimo ะฟะพะด ัะณะธะดะพะน ะพัะณะฐะฝะธะทะฐัะธะธ ISRG (Internet Security Research Group), ะบะพัะพัะฐั ัะฒะปัะตััั ัััะตะดะธัะตะปะตะผ ะฟัะพะตะบัะฐ Letโs Encrypt ะธ ัะฟะพัะพะฑััะฒัะตั ะฟัะพะดะฒะธะถะตะฝะธั HTTPS ะธ ัะฐะทะฒะธัะธั ัะตั ะฝะพะปะพะณะธะน ะดะปั ะฟะพะฒััะตะฝะธั ะทะฐัะธััะฝะฝะพััะธ ะธะฝัะตัะฝะตัะฐ. ะกัะตะดััะฒะฐ ะฑัะดัั ะฟัะตะดะพััะฐะฒะปะตะฝั ะบะพะผะฟะฐะฝะธะตะน Google, ะบะพัะพัะฐั ะพะฟะปะฐัะธั ัะฐะฑะพัั ะะธะณะตะปั ะั ะตะดะฐ (Miguel Ojeda), ะฐะฒัะพัะฐ ะฟัะพะตะบัะฐ Rust-for-Linux. ะ ะฐะฝะตะต ISRG ะธ Google ัะถะต ะฟัะพัะธะฝะฐะฝัะธัะพะฒะฐะปะธ ัะพะทะดะฐะฝะธะต ะฐะปััะตัะฝะฐัะธะฒะฝะพะณะพ HTTP-ะฑัะบะตะฝะดะฐ ะดะปั ััะธะปะธัั curl ะธ ัะฐะทัะฐะฑะพัะบั ะฝะพะฒะพะณะพ TLS-ะผะพะดัะปั ะดะปั http-ัะตัะฒะตัะฐ Apache.
เบญเบตเบเบเบฒเบก Microsoft เปเบฅเบฐ Google, เบเบฐเบกเบฒเบ 70% เบเบญเบเบเปเบญเบเปเบซเบงเปเปเบกเปเบเปเบเบตเบเบกเบฒเบเบฒเบเบเบฒเบเบเบฑเบเบเบฒเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบเบตเปเบเปเปเบเบญเบเปเบ. เบเบฒเบเบงเปเบฒเบเบฒเบเปเบเปเบเบฒเบชเบฒ Rust เปเบเบทเปเบญเบเบฑเบเบเบฐเบเบฒเบญเบปเบเบเบฐเบเบญเบเบเบญเบ kernel เปเบเบฑเปเบ: เปเบเปเบงเบตเบญเบธเบเบฐเบเบญเบเบเบฐเบซเบผเบธเบเบเปเบญเบเบเบงเบฒเบกเบชเปเบฝเบเบเบญเบเบเปเบญเบเปเบซเบงเปเบเบตเปเปเบเบตเบเบเบฒเบเบเบฒเบเบเบฑเบเบเบฒเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบเบตเปเบเปเปเบเบญเบเปเบเปเบฅเบฐเบฅเบปเบเบฅเปเบฒเบเบเบงเบฒเบกเบเบดเบเบเบฒเบเปเบเบฑเปเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบทเปเบเบเบตเปเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบซเบผเบฑเบเบเบฒเบเบเบตเปเบกเบฑเบเปเบเปเบฎเบฑเบเบเบฒเบเบเบปเบเบเปเบญเบเปเบฅเบฐ overrunning buffer bounds.
Rust เบเบฑเบเบเบฑเบเปเบเปเบเบงเบฒเบกเบเบญเบเปเบเบเบญเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเปเบเปเบงเบฅเบฒเบฅเบงเบเบฅเบงเบกเปเบเบเบเปเบฒเบเบเบฒเบเบเบงเบเบชเบญเบเบเบฒเบเบญเปเบฒเบเบญเบดเบ, เบเบฒเบเปเบเบฑเบเปเบเบปเปเบฒเบเบญเบเบงเบฑเบเบเบธเปเบฅเบฐเบเบฒเบเบเบดเบเบเบฒเบกเบเบฐเบซเบผเบญเบเบเบตเบงเบดเบเบเบญเบเบงเบฑเบเบเบธ (เบเบญเบเปเบเบ), เปเบฅเบฐเปเบเบเบเบฒเบเบเบฐเปเบกเบตเบเบเบงเบฒเบกเบเบทเบเบเปเบญเบเบเบญเบเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเปเบเปเบงเบฅเบฒเปเบฅเปเบ. Rust เบเบฑเบเบชเบฐเบซเบเบญเบเบเบฒเบเบเปเบญเบเบเบฑเบเบเบฒเบ overflows integer, เบฎเบฝเบเบฎเปเบญเบเปเบซเปเบเปเบฒเบเบปเบงเปเบเปเบเปเบเบทเบเปเบฅเบตเปเบกเบเบปเปเบเบเปเบญเบเบเบตเปเบเบฐเบเปเบฒเปเบเป, เบกเบตเบเบฒเบเบเบฑเบเบเบฒเบเบเบงเบฒเบกเบเบดเบเบเบฒเบเบเบตเปเบเบตเบเบงเปเบฒเปเบเบซเปเบญเบเบชเบฐเบซเบกเบธเบเบกเบฒเบเบเบฐเบเบฒเบ, เปเบเปเปเบเบงเบเบงเบฒเบกเบเบดเบเบเบญเบเบเบฒเบเบญเปเบฒเบเบญเบตเบเบเบตเปเบเปเปเบเปเบฝเบเปเบเบเปเบฅเบฐเบเบปเบงเปเบเปเบเบเบเปเบฒเปเบฅเบตเปเบกเบเบปเปเบ, เปเบฅเบฐเบชเบฐเบซเบเบญเบเบเบฒเบเบเบดเบกเบเบปเบเบเบตเปเบเบตเปเปเบเบฑเปเบกเปเบเบเปเบเบทเปเบญเบซเบผเบธเบเบเปเบญเบเบเบงเบฒเบกเบเบดเบเบเบฒเบเบขเปเบฒเบเบกเบตเปเบซเบเบเบปเบ.
เปเบซเบผเปเบเบเปเปเบกเบนเบ: opennet.ru
