ืื ืกืืกืืขื ืคึผืจืึธืืจืึทืืืื ื ืฉืคึผืจืึทื Rust 1.34, ืืขืืืขืืึธืคึผืขื ืืืจื ืื ืืึธืืืืืึท ืคึผืจืืืขืงื, ืืื ืืืคืจืืื. ืื ืฉืคึผืจืึทื ืคืึธืืงืืกืื ืืืืฃ ืืืงืึธืจื ืืืืขืจืงืืึทื, ืืื ืึธืืึทืืึทืืืง ืืึผืจืื ืคืึทืจืืืึทืืืื ื, ืืื ืืื ืึท ืืืื ืฆื ืืขืจืืจืืืื ืืืื ืึทืจืืขื ืคึผืึทืจืึทืืขืืืืึทื ืึธื ื ืืฆื ืึท ืืืกื ืงืึทืืขืงืืขืจ ืึธืืขืจ ืจืื ืืืืข.
ืจืืกื ืก ืึธืืึทืืึทืืืง ืืึผืจืื ืคืึทืจืืืึทืืืื ื ืคืจืื ืื ืืขืืืขืืึธืคึผืขืจ ืคืื ืืืึทืื ืืึทื ืืคึผืืึทืืืืฉืึทื ืืื ืคึผืจืึทืืขืงืฅ ืงืขืื ืคึผืจืึธืืืขืืก ืขืจืืืืื ื ืคืื ื ืืืขืจืืง-ืืืจืื ืืึผืจืื ืืึทื ืืคึผืืึทืืืืฉืึทื, ืึทืืึท ืืื ื ืึธื-ืคืจืื ืืึผืจืื ืึทืงืกืขืก, ื ืึทื ืืืึทืื ืืขืจืคืขืจืขื ืกืขืก, ืืึทืคืขืจ ืึธืืืืขืจืจืึทื ื, ืืื ืื ืืื. ืฆื ืคืึทืจืฉืคึผืจืืืื ืืืืืจืขืจืื, ืขื ืฉืืจ ืคึฟืึทืจืืึทืืืื ื ืืื ืคืืจื ืืืคึผืขื ืืึทื ืกืื, ืื ืคึผืจืืืขืงื ืืื ืืขืืืขืืึธืคึผืื ื ืื ืงืึทืจืืึธ ืคึผืขืงื ืคืึทืจืืืึทืืืขืจ, ืืืึธืก ืึทืืึทืื ืืืจ ืฆื ืืึทืงืืืขื ืื ืืืืืจืขืจืื ืืืจืฃ ืคึฟืึทืจ ืื ืคึผืจืึธืืจืึทื ืืื ืืืื ืืื. ืื crates.io ืจืืคึผืึทืืึทืืึธืจื ืืื ืืขืฉืืืฆื ืคึฟืึทืจ ืืึธืกืืื ื ืืืืืจืขืจืื.
ืืืืคึผื ืืืืืฉืื:
- ืื ืงืึทืจืืึธ ืคึผืขืงื ืคืึทืจืืืึทืืืขืจ ืืื ืฆืืืขืืืืื ืืืฉืืจืื ืฆื ืึทืจืืขืื ืืื ืึธืืืขืจื ืึทืืืื ืคึผืขืงื ืจืขืืืฉืืกืืจืื ืืืึธืก ืงืขื ืขื ืงืึธืืืืืืกืืืจื ืืื ืื crates.io ืขืคื ืืืขื ืจืขืืืกืืจื. ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืืขืืืขืืึธืคึผืขืจืก ืคืื ืคึผืจืึทืคึผืจืืืึทืืขืจื ืึทืคึผืืึทืงืืืฉืึทื ื ืงืขื ืขื ืืืฆื ื ืืฆื ืืืืขืจ ืืืืืขื ืข ืคึผืจืืืืึทื ืจืขืืืกืืจื, ืืืึธืก ืงืขื ืขื ืืืื ืืขื ืืฆื ืืืขื ืืืกืืื ื ืืืคึผืขื ืืึทื ืกืื ืืื Cargo.toml, ืืื ืึธื ืืืขื ืื ืึท ืืืขืจืกืืข ืืึธืืขื ืขื ืืขื ืฆื crates.io ืคึฟืึทืจ ืืืืขืจ ืคึผืจืึธืืืงืื, ืืื ืืขืืื ื ืืื ืึธืคึผืฉืืงื ืืืคึผืขื ืืึทื ืกืื ืฆื ืืืืืข ืงืจืืืฅ. io ืืื ืฆื ืืืื ืืืืืขื ืข ืจืขืืืกืืจื.
ืฆื ืืืืื ืึท ืคืื ืืจืืืกื ืืืง ืจืขืืืกืืจื ืฆื ~/.cargo/config
ืึท ื ืืึทืข ืึธืคึผืฆืืข "ืืืื-ืจืขืืืกืืจื" ืืื ืฆืืืขืฉืืขืื ืืื ืื "[ืจืขืืืกืืจืืขืก]" ืึธืคึผืืืืืื ื, ืืื ืึทื "ืื ืืขืจืข ืงืจืืื" ืึธืคึผืฆืืข ืืื ืฆืืืขืืืืื ืฆื ืืขืจืืึธื ืขื ืื ืคืื ืืจืืืกื ืืืง ืจืขืืืกืืจื ืืื ืืืคึผืขื ืืึทื ืกืื ืืื Cargo.toml ืืื ืื "[ืืืคึผืขื ืืึทื ืกืื]" ืึธืคึผืืืืืื ื. ืฆื ืคืึทืจืืื ืื ืฆื ืึทื ื ืึธื ืจืขืืืกืืจื, ืคืฉืื ืฉืืขืื ืื ืึธืืขื ืืึทืงืืืฉืึทื ืกืืืขื ืืื ืื ~/.ืงืึทืจืืึธ/ืงืจืขืืขื ืฉืึทืื ืืขืงืข ืืื ืืืืคื ืื ืืึทืคึฟืขื.
"ืงืึทืจืืึธ ืืึธืืื - ืจืขืืืกืืจื = ืืืื ืจืขืืืกืืจื" ืืื ืฆื ืึทืจืืืกืืขืื ืึท ืคึผืขืงื -
"ืงืึทืจืืึธ ืึทืจืืืกืืขืื -ืจืขืืืกืืจื = ืืืื ืจืขืืืกืืจื"; - ืฆืืืขืืขืื ืคืื ืฉืืืฆื ืคึฟืึทืจ ื ืืฆื ืื "?" ืึธืคึผืขืจืึทืืึธืจ. ืืื ืืึธืงืืขืกืฅ, ืืืึธืก ืืึธืื ืืืจ ืฆื ื ืืฆื ืืืึทืฉืคึผืื ืงืึธื ืคืื ืื ืืึทืงืืืืขื ืืืืฉืึทื ืืื ืืขืกืฅ. ืคืจืืขืจ ืึธืคึผืขืจืึทืืึธืจ
"?" ืงืขื ืืืื ืืขื ืืฆื ืฆื ืฉืขืคึผื ืขืจืจืึธืจืก ืืขืฉืึทืก ืืืจืืคืืจืื ื ืคืื ืคึผืจืืืืจื ืืืืื ืืื ืืขื ืืืึทืืืึทื ืคืื ืื "fn main ()" ืคึฟืื ืงืฆืืข ืึธืืขืจ ืืื ืื "#[ืคึผืจืืืืจื]" ืคืึทื ืืงืฉืึทื ื; - ืืื ืื ืื ืึทืืจืืืืืฅ ืืืคืืื ื ืืื ืคึผืจืึทืกืืืืฉืขืจืึทื ืืึทืงืจืึธืก, ืขืก ืืื ืืขืืืขื ืฆื ื ืืฆื ืึทืจืืืืจืึทืจืืฉ ืกืขืฅ ืคืื ืืึธืงืขื ืก ("#[attr($ืืึธืงืขื ืก)]", "#[attr[$tokens]] ืืื #[attr{$tokens}]"). ืืื ืึทืืขืจ, ืขืืขืืขื ืื ืงืขื ืืืื ืกืคึผืขืฆืืคืืฆืืจื ืืืืื ืืื ืึท ืืืื / ืจืขืงืืจืกืืืืข ืคืึธืจืขื ื ืืฆื ืฉืืจืืงื ืืืืขืจืึทืื, ืคึฟืึทืจ ืืืึทืฉืคึผืื "#[foo(bar, baz(quux, foo = "bar"))]", ืึธืืขืจ ืืืฆื ืขืก ืืื ืืขืืืขื ืฆื ื ืืฆื ืื ืืืขืจืืืฉืึทื ื (' #[range(0. .10)]') ืืื ืงืึทื ืกืืจืึทืงืฉืึทื ื ืืื "#[ืืื ื(ื: ืืืืจืึทืื)]";
- ืื ืืจืืืฅ ืคืื TryFrom ืืื TryInto ืืขื ืขื ืกืืืืืึทืืืืื, ืึทืืึทืืื ื ืืืคึผ ืงืึทื ืืืขืจืืฉืึทื ื ืืื ืืขืืช ืืึทื ืืืื ื. ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืืขืืืึธืืก ืืื from_be_bytes ืืื ืื ืืขืืขืจ ืืืืคึผืก ื ืืฆื ืขืจืืื ืืื ืึทืจืืึทื ืฉืจืืึทื, ืึธืืขืจ ืื ืืึทืื ืึธืคื ืงืืืขื ืืื ืึท Slice ืืืคึผ, ืืื ืงืึทื ืืืขืจืืื ื ืฆืืืืฉื ืขืจืืื ืืื ืกืืืืกืื ืืื ืคึผืจืึธืืืขืืึทืืืง ืฆื ืืึธื ืืึทื ืืืึทืื. ืืื ืื ืืืืฃ ืคืื ื ืืึทืข ืืจืืืฅ, ืื ืกืคึผืขืกืืคืืขื ืึธืคึผืขืจืึทืฆืืข ืงืขื ืขื ืืืื ืืืจืืืขืงืึธืื ืืืืฃ ืื ืคืืืขื ืืืจื ืึท ืจืืฃ ืฆื .try_into(), ืคึฟืึทืจ ืืืึทืฉืคึผืื, "let num = u32::from_be_bytes(slice.try_into()?)". ืคึฟืึทืจ ืงืึทื ืืืขืจืืฉืึทื ื ืืืึธืก ืฉืืขื ืืืง ืืขืจืึธืื (ืืืฉื ืคืื ืืืคึผ u8 ืฆื u32), ืึท ืื ืคืึทืืืืืข ืืขืืช ืืืคึผ ืืื ืฆืืืขืืขืื ืฆื ืืึธืื ืืจืึทื ืกืคึผืขืจืึทื ื ื ืืฆื ืคืื
TryFrom ืคึฟืึทืจ ืึทืืข ืืืืืกืืื ื ืืืคึผืืึทืืึทื ืฅ ืคืื "ืคึฟืื"; - ืืืคึผืจืืฉืืืืืื ืื CommandExt::before_exec ืคึฟืื ืงืฆืืข, ืืืึธืก ืขืจืืืืื ืืืจืืคืืจืื ื ืคืื ืึท ืืึทื ืืืขืจ ืืืืืขืจ ืขืงืกืขืง ืืืึธืก ืืื ืืขืืืขื ืขืงืกืึทืงืืืืึทื ืืื ืืขื ืงืึธื ืืขืงืกื ืคืื ืึท ืงืื ื ืคึผืจืึธืฆืขืก ืคืึธืจืงืขื ื ืึธื ืื ืืึธืคึผื () ืจืืคื. ืืื ืืขืจ ืึทืืึท ืื ืึธืื, ืขืืืขืืข ืจืขืกืืจืกื ืคืื ืืขืจ ืคืึธืืขืจ ืคึผืจืึธืฆืขืก, ืึทืืึท ืืื ืืขืงืข ืืืกืงืจืืคึผืืึธืจืก ืืื ืืึทืคึผื ืืืงืึธืจื ืืขืืืื, ืงืขื ืืืื ืืืคึผืืืงืืืืื, ืืืึธืก ืงืขื ืคืืจื ืฆื ืึทื ืืืคืืื ื ื ืึทืืืจ ืืื ืคืึทืืฉ ืึธืคึผืขืจืึทืฆืืข ืคืื โโโโืืืืจืึทืจืืขืก.
ืึทื ืฉืืึธื before_exec, ืขืก ืืื ืจืขืงืึทืืขื ืืื ืฆื ื ืืฆื ืื ืึทื ืกืืืฃ ืคึฟืื ืงืฆืืข CommandExt :: pre_exec. - ืกืืึทืืืืืืขื ืืขืืชืืขื ืืื ืึทื ืกืืื ื ืึทืืึธืืืฉืข ืื ืืึทืืืฉืขืจ ืืืืคึผืก ืจืืื ืืืฉืื ื ืืื ืืจืืืก ืคืื 8 ืฆื 64 ืืืฅ (ืืืฉื, AtomicU8), ืืื ืืขืืื ื ืืื ืืขืืชืืขื ืืืืคึผืก NonZeroI[8|16|32|54|128].
- ื ื ืืึทืข ืืืื ืคืื ืื ืึทืคึผื ืืื ืืจืืืขืจืืขืคืืจื ืฆื ืื ืกืืึทืืื ืงืึทืืขืืึธืจืืข, ืึทืจืืึทื ืืขืจืขืื ื ืื Any::type_id, Error::type_id, slice::sort_by_cached_key, str::escape_*, str::split_ascii_whitespace, Instant::checked_[add|sub] ] ืืื SystemTime ืืขืืืึธืืก ืืขื ืขื ืกืืืืืึทืืืืื ::checked_[add|sub]. ืื iter::from_fn ืืื iter :: ืกืึทืงืกืขืกืขืจื ืคืึทื ืืงืฉืึทื ื ืืึธืื ืฉืืื ืกืืืืืึทืืืืื;
- ืคึฟืึทืจ ืึทืืข ืื ืืึทืืืฉืขืจ ืืืืคึผืก, ืื ืืฉืขืงื_ืคึผืึธืื, ืกืึทืืืจืึทืืื ื_ืคึผืึธืื, ืืืจืึทืคึผืื ื_ืคึผืึธืื ืืื ืึธืืืืขืจืคืืึธืืื ื_ืคึผืึธืื ืืขืืืึธืืก ืืขื ืขื ืืืคึผืืึทืืขื ืึทื;
- ืฆืืืขืืืืื ืื ืคืืืืงืืื ืฆื ืืขืื ืึธืคึผืืืืืืึทืืืึธื ืก ืืื ืื ืคึฟืึทืจืืื ืืื ื ืืื ืข ืืืจื ืกืคึผืขืฆืืคืืฆืืจื ืื "-C linker-plugin-lto" ืืืืขื ืึธืคึผืฆืืข (ืจืืกืง ืงืึทืืคึผืืืื ืจืืกื ืงืึธื ืืื LLVM ืืืืงืึธืืข, ืืืึธืก ืึทืืึทืื ืืืึธ ืึทืคึผืืึทืืึทืืืืฉืึทื ื ืฆื ืืืื ืืขืืืขื ืื).
ืืงืืจ: opennet.ru