Rust 1.40 เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฟเฉฐเจ— เจญเจพเจธเจผเจพ เจฐเฉ€เจฒเฉ€เจœเจผ

เจชเฉเจฐเจ•เจพเจธเจผเจฟเจค เจธเจฟเจธเจŸเจฎ เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฟเฉฐเจ— เจญเจพเจธเจผเจพ เจฐเฉ€เจฒเฉ€เจœเจผ เจœเฉฐเจ—เจพเจฒ 1.40, เจฎเฉ‹เจœเจผเฉ€เจฒเจพ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจฆเฉเจ†เจฐเจพ เจธเจฅเจพเจชเจฟเจค เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆเฅค เจญเจพเจธเจผเจพ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจธเฉเจฐเฉฑเจ–เจฟเจ† 'เจคเฉ‡ เจ•เฉ‡เจ‚เจฆเฉเจฐเจค เจ•เจฐเจฆเฉ€ เจนเฉˆ, เจ†เจŸเฉ‹เจฎเฉˆเจŸเจฟเจ• เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจชเฉเจฐเจฌเฉฐเจงเจจ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจ•เฉ‚เฉœเจพ เจ‡เจ•เฉฑเจ เจพ เจ•เจฐเจจ เจตเจพเจฒเฉ‡ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เฉ€เจคเฉ‡ เจฌเจฟเจจเจพเจ‚ เจ‰เฉฑเจš เจ•เจพเจฐเจœ เจธเจฎเจพเจจเจคเจพ เจจเฉ‚เฉฐ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฒเจˆ เจธเจพเจงเจจ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจฐเจจเจŸเจพเจˆเจฎ.

เจฐเจธเจŸ เจฆเจพ เจ†เจŸเฉ‹เจฎเฉˆเจŸเจฟเจ• เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจชเฉเจฐเจฌเฉฐเจงเจจ เจกเจฟเจตเฉˆเจฒเจชเจฐ เจจเฉ‚เฉฐ เจชเฉเจ†เจ‡เฉฐเจŸเจฐ เจนเฉ‡เจฐเจพเจซเฉ‡เจฐเฉ€ เจคเฉ‹เจ‚ เจฎเฉเจ•เจค เจ•เจฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ˜เฉฑเจŸ-เจชเฉฑเจงเจฐเฉ€ เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจนเฉ‡เจฐเจพเจซเฉ‡เจฐเฉ€ เจคเฉ‹เจ‚ เจชเฉˆเจฆเจพ เจนเฉ‹เจฃ เจตเจพเจฒเฉ€เจ†เจ‚ เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจคเฉ‹เจ‚ เจฌเจšเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจฌเจพเจ…เจฆ-เจฎเฉเจ•เจค เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจเจ•เจธเฉˆเจธ, เจจเจฒ เจชเฉเจ†เจ‡เฉฐเจŸเจฐ เจกเฉ€เจฐเฉ‡เจซเจฐเฉˆเจ‚เจธ, เจฌเจซเจฐ เจ“เจตเจฐเจฐเจจ เจ…เจคเฉ‡ เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจฆเฉ€เจ†เจ‚เฅค เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจตเฉฐเจกเจฃ, เจ…เจธเฉˆเจ‚เจฌเจฒเฉ€ เจจเฉ‚เฉฐ เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจ‰เจฃ เจ…เจคเฉ‡ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจฆเฉเจ†เจฐเจพ เจจเจฟเจฐเจญเจฐเจคเจพ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจฒเจˆ เจ‡เฉฑเจ• เจชเฉˆเจ•เฉ‡เจœ เจฎเฉˆเจจเฉ‡เจœเจฐ เจตเจฟเจ•เจธเจฟเจค เจ•เฉ€เจคเจพ เจœเจพ เจฐเจฟเจนเจพ เจนเฉˆเฅค เจ•เจพเจฐเจ—เฉ‹, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ•เจฒเจฟเฉฑเจ• เจตเจฟเฉฑเจš เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎ เจฒเจˆ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€เจ†เจ‚ เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€เจ†เจ‚ เจชเฉเจฐเจพเจชเจค เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค เจ‡เฉฑเจ• เจฐเจฟเจชเฉ‹เจœเจผเจŸเจฐเฉ€ เจฎเฉ‡เจœเจผเจฌเจพเจจ เจฒเจพเจ‡เจฌเฉเจฐเฉ‡เจฐเฉ€เจ†เจ‚ เจฒเจˆ เจธเจฎเจฐเจฅเจฟเจค เจนเฉˆ crates.io.

เจฎเฉเฉฑเจ– เจจเจตเฉ€เจจเจคเจพเจตเจพเจ‚:

  • เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจขเจพเจ‚เจšเจฟเจ†เจ‚ (เจขเจพเจ‚เจšเจพ) เจ…เจคเฉ‡ เจ—เจฃเจจเจพเจตเจพเจ‚ (เจตเฉ‡เจฐเฉ€เจเจ‚เจŸ เจฌเจฒเจพเจ• เจฆเฉ‡ เจจเจพเจฒ enum) เจจเฉ‚เฉฐ เจšเจฟเฉฐเจจเฉเจนเจฟเจค เจ•เจฐเจจ เจฆเฉ€ เจฏเฉ‹เจ—เจคเจพ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ† เจนเฉˆ#[เจ—เฉˆเจฐ_เจชเฉ‚เจฐเจฃ]", เจœเฉ‹ เจ‡เจน เจธเจนเจพเจ‡เจ• เจนเฉˆ เจญเจตเจฟเฉฑเจ– เจตเจฟเฉฑเจš, เจ˜เฉ‹เจธเจผเจฟเจค เจขเจพเจ‚เจšเฉ‡ เจ…เจคเฉ‡ เจ—เจฃเจจเจพเจตเจพเจ‚ เจตเจฟเฉฑเจš เจจเจตเฉ‡เจ‚ เจ–เฉ‡เจคเจฐ เจ…เจคเฉ‡ เจตเจฟเจ•เจฒเจช เจธเจผเจพเจฎเจฒ เจ•เจฐเฉ‹เฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจฎเฉŒเจกเจฟเจŠเจฒเจพเจ‚ เจฆเฉ‡ เจกเจฟเจตเฉˆเจฒเจชเจฐ เจœเจฟเจจเฉเจนเจพเจ‚ เจ•เฉ‹เจฒ เจœเจจเจคเจ• เจคเฉŒเจฐ 'เจคเฉ‡ เจ˜เฉ‹เจธเจผเจฟเจค เจ–เฉ‡เจคเจฐเจพเจ‚ เจตเจพเจฒเฉ‡ เจขเจพเจ‚เจšเฉ‡ เจนเจจ, เจ‰เจนเจจเจพเจ‚ เจขเจพเจ‚เจšเฉ‡ เจจเฉ‚เฉฐ เจšเจฟเฉฐเจจเฉเจนเจฟเจค เจ•เจฐเจจ เจฒเจˆ "#[non_exhaustive]" เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจจ เจœเจฟเจนเจจเจพเจ‚ เจตเจฟเฉฑเจš เจญเจตเจฟเฉฑเจ– เจตเจฟเฉฑเจš เจจเจตเฉ‡เจ‚ เจ–เฉ‡เจคเจฐ เจธเจผเจพเจฎเจฒ เจ•เฉ€เจคเฉ‡ เจœเจพ เจธเจ•เจฆเฉ‡ เจนเจจเฅค เจนเฉเจฃ เจคเฉฑเจ•, เจ‡เจธ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš, เจกเจฟเจตเฉˆเจฒเจชเจฐ เจจเฉ‚เฉฐ เจซเฉ€เจฒเจกเจพเจ‚ เจจเฉ‚เฉฐ เจจเจฟเฉฑเจœเฉ€ เจคเฉŒเจฐ 'เจคเฉ‡ เจ˜เฉ‹เจธเจผเจฟเจค เจ•เจฐเจจ เจ…เจคเฉ‡ เจ–เฉ‡เจคเจฐเจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจ…เจŸเฉฑเจฒ เจธเฉ‚เจšเฉ€ เจจเจพเจฒ เจฌเฉฐเจจเฉเจนเจฃ เจฒเจˆ เจšเฉเจฃเจจ เจฒเจˆ เจฎเจœเจฌเฉ‚เจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€เฅค เจจเจตเฉ€เจ‚ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพ เจ‡เจธ เจธเฉ€เจฎเจพ เจจเฉ‚เฉฐ เจนเจŸเจพเจ‰เจ‚เจฆเฉ€ เจนเฉˆ เจ…เจคเฉ‡ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจชเจนเจฟเจฒเจพเจ‚ เจ•เฉฐเจชเจพเจ‡เจฒ เจ•เฉ€เจคเฉ‡ เจฌเจพเจนเจฐเฉ€ เจ•เฉ‹เจก เจจเฉ‚เฉฐ เจคเฉ‹เฉœเจจ เจฆเฉ‡ เจœเฉ‹เจ–เจฎ เจคเฉ‹เจ‚ เจฌเจฟเจจเจพเจ‚ เจญเจตเจฟเฉฑเจ– เจตเจฟเฉฑเจš เจจเจตเฉ‡เจ‚ เจ–เฉ‡เจคเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเฉ€ เจนเฉˆเฅค เจ•เฉเจฐเฉ‡เจŸ เจชเฉˆเจ•เฉ‡เจœเจพเจ‚ เจตเจฟเฉฑเจš, เจœเจฆเฉ‹เจ‚ "เจฎเฉ‡เจฒ" เจญเจพเจ— เจตเจฟเฉฑเจš เจตเจฟเจ•เจฒเจชเจพเจ‚ เจจเจพเจฒ เจฎเฉ‡เจฒ เจ–เจพเจ‚เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจฎเจพเจธเจ• "_ => {...}" เจฆเฉ€ เจ‡เฉฑเจ• เจธเจชเจธเจผเจŸ เจชเจฐเจฟเจญเจพเจธเจผเจพ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ, เจธเฉฐเจญเจพเจตเจฟเจค เจญเจตเจฟเฉฑเจ– เจฆเฉ‡ เจ–เฉ‡เจคเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจตเจฐ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, เจจเจนเฉ€เจ‚ เจคเจพเจ‚ เจจเจตเฉ‡เจ‚ เจ–เฉ‡เจคเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจ เจตเฉ‡เจฒเฉ‡ เจ‡เฉฑเจ• เจ—เจฒเจคเฉ€ เจฆเจฟเจ–เจพเจˆ เจœเจพเจตเฉ‡เจ—เฉ€เฅค
  • เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ† เจ‡เฉฑเจ• เจ•เจฟเจธเจฎ เจฆเฉ‡ เจธเฉฐเจฆเจฐเจญ เจตเจฟเฉฑเจš เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจคเจฎเจ• เจฎเฉˆเจ•เจฐเฉ‹ เจฎเฉˆเจ•!() เจจเฉ‚เฉฐ เจ•เจพเจฒ เจ•เจฐเจจ เจฆเฉ€ เจฏเฉ‹เจ—เจคเจพเฅค เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจคเฉเจธเฉ€เจ‚ เจนเฉเจฃ เจฒเจฟเจ– เจธเจ•เจฆเฉ‡ เจนเฉ‹ โ€œtype Foo = expand_to_type!(bar);โ€ เจœเฉ‡เจ•เจฐ โ€œexpand_to_typeโ€ เจ‡เฉฑเจ• เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจคเจฎเจ• เจฎเฉˆเจ•เจฐเฉ‹ เจนเฉˆเฅค
  • "เจฌเจพเจนเจฐเฉ€ { ... }" เจฌเจฒเจพเจ•เจพเจ‚ เจตเจฟเฉฑเจš เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ† เจตเจฟเจงเฉ€เจ—เจค เจ…เจคเฉ‡ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพ เจตเจพเจฒเฉ‡ เจฎเฉˆเจ•เจฐเฉ‹ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฆเฉ€ เจฏเฉ‹เจ—เจคเจพ, เจœเจฟเจธ เจตเจฟเฉฑเจš โ€œbang!()โ€ เจฎเฉˆเจ•เจฐเฉ‹ เจธเจผเจพเจฎเจฒ เจนเจจ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ:

    macro_rules! make_item { ($name:ident) => { fn $name(); } }

    เจฌเจพเจนเจฐเฉ€ {
    make_item!(alpha);
    make_item!(เจฌเฉ€เจŸเจพ);
    }

    เจฌเจพเจนเจฐเฉ€ "C" {
    #[my_identity_macro] fn foo();
    }

  • เจฎเฉˆเจ•เจฐเฉ‹เจœเจผ เจตเจฟเฉฑเจš เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเจพ โ€œmacro_rules!โ€ เจคเฉฑเจค เจฌเจฃเจพเจ‰เจฃ เจฆเฉ€ เจธเจฎเจฐเฉฑเจฅเจพเฅค "macro_rules!" เจคเจฟเจ†เจฐ เจ•เฉ€เจคเจพ เจœเจพ เจฐเจฟเจนเจพ เจนเฉˆ! เจซเฉฐเจ•เจธเจผเจจ-เจตเจฐเจ—เฉ‡ เจฎเฉˆเจ•เจฐเฉ‹ (โ€œmac!()โ€) เจ…เจคเฉ‡ เจ—เฉเจฃเจพเจ‚ (โ€œ#[mac]โ€) เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฎเฉˆเจ•เจฐเฉ‹ เจตเจฟเฉฑเจš เจธเฉฐเจญเจต เจนเฉˆเฅค
  • $m:เจฎเฉˆเจŸเจพ เจฎเฉˆเจชเจฟเฉฐเจ— เจคเฉฑเจค เจตเจฟเฉฑเจš เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ† เจ†เจฐเจฌเจฟเจŸเจฐเฉ‡เจฐเฉ€ เจŸเฉ‹เจ•เจจ เจ—เจฃเจจเจพ เจฎเฉเฉฑเจฒเจพเจ‚ เจฒเจˆ เจธเจฎเจฐเจฅเจจ (โ€œ[TOKEN_STREAM]โ€, โ€œ{TOKEN_STREAM}โ€ เจ…เจคเฉ‡ โ€œ(TOKEN_STREAM)โ€), เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ:

    macro_rules! accept_meta { ($m:meta) => {} }
    accept_meta!( my::path);
    accept_meta!( my::path = "lit");
    accept_meta!( my::path (abc) );
    accept_meta!( my::path [ abc ] );
    accept_meta!( my::path { abc } );

  • เจฐเจธเจŸ 2015 เจฎเฉ‹เจก เจตเจฟเฉฑเจš, เจเจจเจเจฒเจเจฒ (เจจเจพเจจ-เจฒเฉ‡เจ•เจธเฉ€เจ•เจฒ เจฒเจพเจˆเจซเจŸเจพเจˆเจฎเจœเจผ) เจคเจ•เจจเฉ€เจ• เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ (เจ‰เจงเจพเจฐ เจšเฉˆเจ•เจฐ) เจฆเฉ‡ เจ‰เจงเจพเจฐ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐเจฆเฉ‡ เจธเจฎเฉ‡เจ‚ เจชเจ›เจพเจฃเฉ€เจ†เจ‚ เจ—เจˆเจ†เจ‚ เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจฒเจˆ เจ—เจฒเจคเฉ€ เจ†เจ‰เจŸเจชเฉเฉฑเจŸ เจจเฉ‚เฉฐ เจธเจฎเจฐเฉฑเจฅ เจฌเจฃเจพเจ‡เจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจชเจนเจฟเจฒเจพเจ‚, เจฐเจธเจŸ 2018 เจฎเฉ‹เจก เจตเจฟเฉฑเจš เจšเฉฑเจฒเจฃ เจตเฉ‡เจฒเฉ‡ เจšเฉ‡เจคเจพเจตเจจเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ—เจฒเจคเฉ€เจ†เจ‚ เจจเจพเจฒ เจฌเจฆเจฒ เจฆเจฟเฉฑเจคเจพ เจœเจพเจ‚เจฆเจพ เจธเฉ€เฅค
    เจคเจฌเจฆเฉ€เจฒเฉ€ เจจเฉ‚เฉฐ Rust 2015 เจฎเฉ‹เจก เจคเฉฑเจ• เจตเจงเจพเจ‡เจ† เจ—เจฟเจ† เจธเฉ€ เจฆเฉ‡ เจฌเจพเจ…เจฆ, เจกเจฟเจตเฉˆเจฒเจชเจฐ เจ…เฉฐเจค เจตเจฟเฉฑเจš เจ•เจฐเจจ เจฆเฉ‡ เจฏเฉ‹เจ— เจธเจจ เจ›เฉเจŸเจ•เจพเจฐเจพ เจชเจพเจ‰เจฃเจพ เจชเฉเจฐเจพเจฃเฉ‡ เจ‰เจงเจพเจฐ เจšเฉˆเจ•เจฐ เจคเฉ‹เจ‚เฅค

    เจธเจพเจจเฉ‚เฉฐ เจฏเจพเจฆ เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจ•เจฟ เจ‰เจงเจพเจฐ เจตเฉ‡เจฐเฉ€เจเจฌเจฒ เจฆเฉ‡ เจœเฉ€เจตเจจ เจ•เจพเจฒ เจจเฉ‚เฉฐ เจงเจฟเจ†เจจ เจตเจฟเฉฑเจš เจฐเฉฑเจ–เจฃ เจฒเจˆ เจ‡เฉฑเจ• เจจเจตเฉ€เจ‚ เจตเจฟเจงเฉ€ 'เจคเฉ‡ เจ…เจงเจพเจฐเจค เจคเจธเจฆเฉ€เจ• เจชเฉเจฐเจฃเจพเจฒเฉ€ เจจเฉ‡ เจ•เฉเจ เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจฆเฉ€ เจชเจ›เจพเจฃ เจ•เจฐเจจเจพ เจธเฉฐเจญเจต เจฌเจฃเจพเจ‡เจ† เจนเฉˆ เจœเฉ‹ เจชเฉเจฐเจพเจฃเฉ‡ เจคเจธเจฆเฉ€เจ• เจ•เฉ‹เจก เจฆเฉเจ†เจฐเจพ เจ…เจฃเจฆเฉ‡เจ–เฉ€ เจ—เจˆ เจธเฉ€เฅค เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ…เจœเจฟเจนเฉ€เจ†เจ‚ เจœเจพเจ‚เจšเจพเจ‚ เจฒเจˆ เจ—เจฒเจคเฉ€ เจ†เจ‰เจŸเจชเฉเฉฑเจŸ เจชเจนเจฟเจฒเจพเจ‚ เจ•เฉฐเจฎ เจ•เจฐเจจ เจตเจพเจฒเฉ‡ เจ•เฉ‹เจก เจฆเฉ‡ เจจเจพเจฒ เจ…เจจเฉเจ•เฉ‚เจฒเจคเจพ เจจเฉ‚เฉฐ เจชเฉเจฐเจญเจพเจตเจค เจ•เจฐ เจธเจ•เจฆเฉ€ เจนเฉˆ, เจ‡เจธ เจฒเจˆ เจšเฉ‡เจคเจพเจตเจจเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ—เจฒเจคเฉ€เจ†เจ‚ เจฆเฉ€ เจฌเจœเจพเจ เจชเจนเจฟเจฒเจพเจ‚ เจœเจพเจฐเฉ€ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€เฅค

  • "const" เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพ, เจœเฉ‹ เจธเจฅเจฟเจฐเจพเจ‚เจ• เจฆเฉ€ เจฌเจœเจพเจ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจธเฉฐเจฆเจฐเจญ เจตเจฟเฉฑเจš เจ‡เจธเจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจ เจฆเฉ€ เจธเฉฐเจญเจพเจตเจจเจพ เจจเฉ‚เฉฐ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจฆเฉ€ เจนเฉˆ, is_power_of_two เจซเฉฐเจ•เจธเจผเจจ (เจ…เจฃ-เจนเจธเจคเจพเจ–เจฐเจฟเจค เจชเฉ‚เจฐเจจ เจ…เฉฐเจ•เจพเจ‚ เจฒเจˆ) เจฒเจˆ เจตเจฐเจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆเฅค
  • API เจฆเฉ‡ เจ‡เฉฑเจ• เจจเจตเฉ‡เจ‚ เจนเจฟเฉฑเจธเฉ‡ เจจเฉ‚เฉฐ เจธเจฅเจพเจˆ เจธเจผเฉเจฐเฉ‡เจฃเฉ€ เจตเจฟเฉฑเจš เจญเฉ‡เจœเจฟเจ† เจ—เจฟเจ† เจนเฉˆ, เจœเจฟเจธ เจตเจฟเฉฑเจš เจŸเฉ‹เจกเฉ‹!() เจฎเฉˆเจ•เจฐเฉ‹ เจ…เจคเฉ‡ เจธเจฒเจพเจˆเจธ::เจฐเฉ€เจชเฉ€เจŸ, เจฎเฉ‡เจฎ::เจŸเฉ‡เจ•, BTreeMap::get_key_value, HashMap::get_key_value, เจตเจฟเจงเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจธเจฅเจฟเจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆเฅค
    เจตเจฟเจ•เจฒเจช::as_deref, เจตเจฟเจ•เจฒเจช::as_deref_mut, เจตเจฟเจ•เจฒเจช::flatten, UdpSocket::peer_addr, {f32,f64}::to_be_bytes, {f32,f64}::to_le_bytes,{f32,f64}::to_f32, f64}::from_be_bytes, {f32,f64}::from_le_bytes, เจ…เจคเฉ‡ {f32,f64}::from_ne_bytesเฅค

  • เจชเฉˆเจ•เฉ‡เจœ เจฎเฉˆเจจเฉ‡เจœเจฐ เจ•เจพเจฐเจ—เฉ‹ เจตเจฟเฉฑเจš
    เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเจพ เจกเจฟเจธเจ• 'เจคเฉ‡ เจ•เฉˆเจธเจผเจฟเฉฐเจ— เจ•เฉฐเจชเจพเจˆเจฒเจฐ เจšเฉ‡เจคเจพเจตเจจเฉ€เจ†เจ‚เฅค "เจ•เจพเจฐเจ—เฉ‹ เจฎเฉˆเจŸเจพเจกเฉ‡เจŸเจพ" เจ•เจฎเจพเจ‚เจก เจตเจฟเฉฑเจš "เจ•เจพเจฐเจ—เฉ‹ เจฎเฉˆเจŸเจพเจกเฉ‡เจŸเจพ" เจตเจฟเจ•เจฒเจช เจธเจผเจพเจฎเจฒ เจ•เฉ€เจคเจพ เจ—เจฟเจ†--เจซเจฟเจฒเจŸเจฐ-เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ" เจจเจฟเจฐเจญเจฐเจคเจพ เจฐเฉˆเจœเจผเฉ‹เจฒเจฟเจŠเจธเจผเจจ เจ•เจพเจฒเจฎ เจตเจฟเฉฑเจš เจธเจฟเจฐเจซเจผ เจ–เจพเจธ เจŸเจพเจฐเจ—เฉ‡เจŸ เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ เจจเจพเจฒ เจœเฉเฉœเฉ‡ เจชเฉˆเจ•เฉ‡เจœ เจฆเจฟเจ–เจพเจ‰เจฃ เจฒเจˆเฅค เจตเฉˆเจง TLS เจธเฉฐเจธเจ•เจฐเจฃเจพเจ‚ เจจเฉ‚เฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจ•เจฐเจจ เจฒเจˆ http.ssl-เจตเจฐเจœเจจ เจธเฉฐเจฐเจšเจจเจพ เจตเจฟเจ•เจฒเจช เจธเจผเจพเจฎเจฒ เจ•เฉ€เจคเจพ เจ—เจฟเจ†เฅค
    เจญเจพเจ— เจจเฉ‚เฉฐ เจชเฉเจฐเจ•เจพเจธเจผเจฟเจค เจ•เจฐเจจ เจฆเฉ€ เจฏเฉ‹เจ—เจคเจพ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจฟเจ† "dev-เจจเจฟเจฐเจญเจฐเจคเจพเจตเจพเจ‚"เจตเจฐเจœเจจ" เจ•เฉเฉฐเจœเฉ€ เจจเฉ‚เฉฐ เจจเจฟเจฐเจงเจพเจฐเจฟเจค เจ•เฉ€เจคเฉ‡ เจฌเจฟเจจเจพเจ‚เฅค

  • rustc เจ•เฉฐเจชเจพเจˆเจฒเจฐ เจŸเจพเจฐเจ—เฉ‡เจŸ เจชเจฒเฉ‡เจŸเจซเจพเจฐเจฎ thumbv7neon-unknown-linux-musleabihf, aarch64-unknown-none-softfloat, mips64-unknown-linux-muslabi64 เจ…เจคเฉ‡ mips64el-unknown-linux-muslabi64 เจฒเจˆ เจคเฉ€เจœเฉ‡ เจชเฉฑเจงเจฐ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจคเฉ€เจœเฉ‡ เจชเฉฑเจงเจฐ เจตเจฟเฉฑเจš เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจธเจนเจพเจ‡เจคเจพ เจธเจผเจพเจฎเจฒ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ, เจชเจฐ เจธเจตเฉˆเจšเจพเจฒเจค เจœเจพเจ‚เจš เจ…เจคเฉ‡ เจ…เจงเจฟเจ•เจพเจฐเจค เจฌเจฟเจฒเจกเจพเจ‚ เจฆเฉ‡ เจชเฉเจฐเจ•เจพเจธเจผเจจ เจคเฉ‹เจ‚ เจฌเจฟเจจเจพเจ‚เฅค

เจธเจฐเฉ‹เจค: opennet.ru

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹