เชฐเชธเซเชŸ 1.78 เชฐเชฟเชฒเซ€เช. เชฌเซ‹เชฐเซเช—เซ‹ เชญเชพเชทเชพ เช•เซ‡ เชœเซ‡ เช—เซ‹ เช…เชจเซ‡ เชฐเชธเซเชŸเชจเซ€ เชถเช•เซเชคเชฟเช“เชจเซ‡ เชœเซ‹เชกเซ‡ เช›เซ‡

เชฐเชธเซเชŸ 1.78 เชธเชพเชฎเชพเชจเซเชฏ เชนเซ‡เชคเซเชตเชพเชณเซ€ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชญเชพเชทเชพเชจเซเช‚ เชชเซเชฐเช•เชพเชถเชจ, เชฎเซ‹เชเชฟเชฒเชพ เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เชฆเซเชตเชพเชฐเชพ เชธเซเชฅเชพเชชเชฟเชค, เชชเชฐเช‚เชคเซ เชนเชตเซ‡ เชธเซเชตเชคเช‚เชคเซเชฐ เชฌเชฟเชจ-เชฒเชพเชญเช•เชพเชฐเซ€ เชธเช‚เชธเซเชฅเชพ เชฐเชธเซเชŸ เชซเชพเช‰เชจเซเชกเซ‡เชถเชจเชจเชพ เช†เชถเซเชฐเชฏ เชนเซ‡เช เชณ เชตเชฟเช•เชธเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡, เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡. เชญเชพเชทเชพ เชฎเซ‡เชฎเชฐเซ€ เชธเชฒเชพเชฎเชคเซ€ เชชเชฐ เชงเซเชฏเชพเชจ เช•เซ‡เชจเซเชฆเซเชฐเชฟเชค เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เช—เชพเชฐเซเชฌเซ‡เชœ เช•เชฒเซ‡เช•เซเชŸเชฐ เช…เชจเซ‡ เชฐเชจเชŸเชพเชˆเชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชŸเชพเชณเซ€เชจเซ‡ เช‰เชšเซเชš เชœเซ‹เชฌ เชธเชฎเชพเช‚เชคเชฐเชคเชพ เชนเชพเช‚เชธเชฒ เช•เชฐเชตเชพเชจเชพ เชฎเชพเชงเซเชฏเชฎ เชชเซ‚เชฐเชพ เชชเชพเชกเซ‡ เช›เซ‡ (เชฐเชจเชŸเชพเช‡เชฎ เชฎเซ‚เชณเชญเซ‚เชค เชชเซเชฐเชพเชฐเช‚เชญ เช…เชจเซ‡ เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค เชชเซเชธเซเชคเช•เชพเชฒเชฏเชจเซ€ เชœเชพเชณเชตเชฃเซ€ เชฎเชพเชŸเซ‡ เช˜เชŸเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡).

เชฐเชธเซเชŸเชจเซ€ เชฎเซ‡เชฎเชฐเซ€ เชนเซ‡เชจเซเชกเชฒเชฟเช‚เช— เชชเชฆเซเชงเชคเชฟเช“ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเชจเซ‡ เชชเซ‹เช‡เชจเซเชŸเชฐเชจเซ€ เชนเซ‡เชฐเชซเซ‡เชฐ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชญเซ‚เชฒเซ‹เชฅเซ€ เชฌเชšเชพเชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เชฒเซ‹-เชฒเซ‡เชตเชฒ เชฎเซ‡เชฎเชฐเซ€ เชนเซ‡เชจเซเชกเชฒเชฟเช‚เช—เชจเซ‡ เช•เชพเชฐเชฃเซ‡ เชŠเชญเซ€ เชฅเชคเซ€ เชธเชฎเชธเซเชฏเชพเช“ เชธเชพเชฎเซ‡ เชฐเช•เซเชทเชฃ เช†เชชเซ‡ เช›เซ‡, เชœเซ‡เชฎ เช•เซ‡ เชฎเซ‡เชฎเชฐเซ€ เชเชฐเชฟเชฏเชพเชจเซ‡ เชฎเซเช•เซเชค เช•เชฐเซเชฏเชพ เชชเช›เซ€ เชคเซ‡เชจเซ‡ เชเช•เซเชธเซ‡เชธ เช•เชฐเชตเซเช‚, เชจเชฒ เชชเซ‹เช‡เชจเซเชŸเชฐเชจเซ‹ เชธเช‚เชฆเชฐเซเชญ เช†เชชเชตเซ‹, เชฌเชซเชฐ เช“เชตเชฐเชฐเชจเซเชธ เชตเช—เซ‡เชฐเซ‡. เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€เช“เชจเซเช‚ เชตเชฟเชคเชฐเชฃ เช•เชฐเชตเชพ, เชฌเชฟเชฒเซเชก เชชเซเชฐเชฆเชพเชจ เช•เชฐเชตเชพ เช…เชจเซ‡ เชจเชฟเชฐเซเชญเชฐเชคเชพเช“เชจเซเช‚ เชธเช‚เชšเชพเชฒเชจ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เช•เชพเชฐเซเช—เซ‹ เชชเซ‡เช•เซ‡เชœ เชฎเซ‡เชจเซ‡เชœเชฐ เชตเชฟเช•เชธเชพเชตเซ‡ เช›เซ‡. crates.io เชฐเซ€เชชเซ‹เชเซ€เชŸเชฐเซ€ เชนเซ‹เชธเซเชŸเชฟเช‚เช— เชฒเชพเชˆเชฌเซเชฐเซ‡เชฐเซ€เช“ เชฎเชพเชŸเซ‡ เช†เชงเชพเชฐเชญเซ‚เชค เช›เซ‡.

เช•เชฎเซเชชเชพเชˆเชฒ เชธเชฎเชฏเซ‡ เชฐเชธเซเชŸเชฎเชพเช‚ เชฐเซ‡เชซเชฐเชจเซเชธ เชšเซ‡เช•เชฟเช‚เช—, เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซ€ เชฎเชพเชฒเชฟเช•เซ€เชจเซ‹ เชŸเซเชฐเซ…เช• เชฐเชพเช–เชตเชพ, เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชฒเชพเช‡เชซเชŸเชพเช‡เชฎ (เชธเซเช•เซ‹เชชเซเชธ)เชจเซ‹ เชŸเซเชฐเซ…เช• เชฐเชพเช–เชตเชพ เช…เชจเซ‡ เช•เซ‹เชก เชเช•เซเชเชฟเช•เซเชฏเซเชถเชจ เชฆเชฐเชฎเชฟเชฏเชพเชจ เชฎเซ‡เชฎเชฐเซ€ เชเช•เซเชธเซ‡เชธเชจเซ€ เชธเชพเชšเซ€เชคเชพเชจเซเช‚ เชฎเซ‚เชฒเซเชฏเชพเช‚เช•เชจ เช•เชฐเซ€เชจเซ‡ เชฎเซ‡เชฎเชฐเซ€ เชธเซเชฐเช•เซเชทเชพ เชชเซ‚เชฐเซ€ เชชเชพเชกเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชฐเชธเซเชŸ เชชเชฃ เชชเซ‚เชฐเซเชฃเชพเช‚เช• เช“เชตเชฐเชซเซเชฒเซ‹ เชธเชพเชฎเซ‡ เชฐเช•เซเชทเชฃ เชชเซ‚เชฐเซเช‚ เชชเชพเชกเซ‡ เช›เซ‡, เช‰เชชเชฏเซ‹เช— เช•เชฐเชคเชพ เชชเชนเซ‡เชฒเชพ เชšเชฒ เชฎเซ‚เชฒเซเชฏเซ‹เชจเซ€ เชซเชฐเชœเชฟเชฏเชพเชค เชถเชฐเซ‚เช†เชคเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡, เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€เชฎเชพเช‚ เชญเซ‚เชฒเซ‹เชจเซ‡ เชตเชงเซ เชธเชพเชฐเซ€ เชฐเซ€เชคเซ‡ เชนเซ‡เชจเซเชกเชฒ เช•เชฐเซ‡ เช›เซ‡, เชกเชฟเชซเซ‹เชฒเซเชŸ เชฐเซ‚เชชเซ‡ เช…เชชเชฐเชฟเชตเชฐเซเชคเชจเชถเซ€เชฒ เชธเช‚เชฆเชฐเซเชญเซ‹ เช…เชจเซ‡ เชšเชฒเซ‹เชจเซ‹ เช–เซเชฏเชพเชฒ เชฒเชพเช—เซ เช•เชฐเซ‡ เช›เซ‡, เชฒเซ‹เชœเชฟเช•เชฒ เชญเซ‚เชฒเซ‹เชจเซ‡ เช˜เชŸเชพเชกเชตเชพ เชฎเชพเชŸเซ‡ เชฎเชœเชฌเซ‚เชค เชธเซเชŸเซ‡เชŸเชฟเช• เชŸเชพเช‡เชชเชฟเช‚เช— เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡.

เชฎเซเช–เซเชฏ เชจเชตเซ€เชจเชคเชพเช“:

  • เชจเชตเซ€ เชตเชฟเชถเซ‡เชทเชคเชพ เชจเซ‡เชฎเชธเซเชชเซ‡เชธ "#[เชกเชพเชฏเช—เซเชจเซ‹เชธเซเชŸเชฟเช•]" เชชเซเชฐเชธเซเชคเชพเชตเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡, เชœเซ‡ เช•เชฎเซเชชเชพเช‡เชฒเชฐ เชฆเซเชตเชพเชฐเชพ เช‰เชคเซเชชเชพเชฆเชฟเชค เชญเซ‚เชฒ เชธเช‚เชฆเซ‡เชถเชพเช“เชจเซ‡ เชชเซเชฐเชญเชพเชตเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡เชจเซเช‚ เชธเชพเชงเชจ เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡. เชจเชตเซ€ เชœเช—เซเชฏเชพเชฎเชพเช‚ เชชเซเชฐเชฅเชฎ "#[diagnostic::on_unimplemented]" เชเชŸเซเชฐเชฟเชฌเซเชฏเซเชŸ เช›เซ‡, เชœเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชเชตเซ€ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเชฎเชพเช‚ เชซเซ‡เช‚เช•เชตเชพเชฎเชพเช‚ เช†เชตเซ‡เชฒเชพ เชญเซ‚เชฒ เชธเช‚เชฆเซ‡เชถเชพเช“เชจเซ‡ เช•เชธเซเชŸเชฎเชพเช‡เช เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡ เชœเซเชฏเชพเช‚ เชคเชฎเชพเชฐเซ‡ เชเชตเชพ เชฒเช•เซเชทเชฃเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ เชœเซ‡ เชชเซเชฐเช•เชพเชฐ เชฎเชพเชŸเซ‡ เช…เชฎเชฒเชฎเชพเช‚ เชจ เชนเซ‹เชฏ. #[diagnostic::on_unimplemented( เชธเช‚เชฆเซ‡เชถ = "`ImportantTrait<{A}>` เชฎเชพเชŸเซ‡เชจเซ‹ เชฎเชพเชฐเซ‹ เชธเช‚เชฆเซ‡เชถ `{Self}` เชฎเชพเชŸเซ‡ เชฒเชพเช—เซ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เชจเชฅเซ€", เชฒเซ‡เชฌเชฒ = "เชฎเชพเชฐเซเช‚ เชฒเซ‡เชฌเชฒ", เชจเซ‹เช‚เชง = "เชจเซ‹เช‚เชง 1", เชจเซ‹เช‚เชง = "เชจเซ‹เช‚เชง 2" )] เชฒเช•เซเชทเชฃ ImportantTrait {} fn use_my_trait(_: impl ImportantTrait ) {} fn เชฎเซเช–เซเชฏ() { use_my_trait(String::new()); } เชญเซ‚เชฒ[E32]: `เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เชฒเช•เซเชทเชฃ เชฎเชพเชŸเซ‡ เชฎเชพเชฐเซ‹ เชธเช‚เชฆเซ‡เชถ `เชธเซเชŸเซเชฐเชฟเช‚เช—` โ€”> src/main.rs:0277:32 | เชฎเชพเชŸเซ‡ ` เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชพเชฏเซ‡เชฒ เชจเชฅเซ€ 12 | use_my_trait(เชธเซเชŸเซเชฐเชฟเช‚เช—::new()); | โ€”โ€”โ€”โ€” ^^^^^^^^^^^^^ เชฎเชพเชฏ เชฒเซ‡เชฌเชฒ | | | เช† เช•เซ‰เชฒ เชฆเซเชตเชพเชฐเชพ เชฐเชœเซ‚ เช•เชฐเชพเชฏเซ‡เชฒ เชฌเชพเช‰เชจเซเชก เชฆเซเชตเชพเชฐเชพ เช†เชตเชถเซเชฏเช• เช›เซ‡ | = เชฎเชฆเชฆ: เชฒเช•เซเชทเชฃ `เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เชฒเช•เซเชทเชฃ `` เชถเชฌเซเชฆเชฎเชพเชณเชพ` = เชจเซ‹เช‚เชง เชฎเชพเชŸเซ‡ เช…เชฎเชฒเชฎเชพเช‚ เช†เชตเซ‡เชฒ เชจเชฅเซ€: เชจเซ‹เช‚เชง 18 = เชจเซ‹เช‚เชง: เชจเซ‹เช‚เชง 12
  • เช…เชธเซเชฐเช•เซเชทเชฟเชค เชซเช‚เช•เซเชถเชจเซเชธ เชชเชฐ เชฒเชพเช—เซ เช•เชฐเชพเชฏเซ‡เชฒ เชชเซเชฐเซ€-เชเชธเชฐเซเชŸ เชšเซ‡เช•เซเชธ เชนเชตเซ‡ เช•เซ‹เชก เชœเชจเชฐเซ‡เชถเชจ เชธเซเชงเซ€ เชธเซเชฅเช—เชฟเชค เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡, เช† เชคเชชเชพเชธเชจเซ‡ "#[cfg(debug_asserions)]" เชฎเซ‹เชกเชฎเชพเช‚ เชธเซเชŸเชพเชจเซเชกเชฐเซเชก เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€ เชฌเชจเชพเชตเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชตเช—เชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡. เชคเชชเชพเชธเชจเซ‡ เชŸเซเชฐเชฟเช—เชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชนเชตเซ‡ เชคเชฎเชพเชฐเชพ เช•เซ‹เชกเชจเชพ เชชเชฐเซ€เช•เซเชทเชฃ เช…เชฅเชตเชพ เชกเซ€เชฌเช— เชฌเชฟเชฒเซเชกเซเชธ เชฎเชพเชŸเซ‡ เชกเซ€เชฌเช— เชเชธเชฐเซเชŸเซเชธเชจเซ‡ เชธเช•เซเชทเชฎ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชคเซ‡ เชชเซ‚เชฐเชคเซเช‚ เช›เซ‡.
  • เชธเซเชŸเชพเชจเซเชกเชฐเซเชก เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€เชฎเชพเช‚ เชซเช‚เช•เซเชถเชจเชจเซ€ เชตเชฐเซเชคเชฃเซ‚เช• เชœเซ‡ เชชเซ‹เช‡เชจเซเชŸเชฐ เช…เชจเซ‡ เชธเซเชฒเชพเช‡เชธเซ‡เชธเชจเชพ เชธเช‚เชฐเซ‡เช–เชฃเชจเซ‡ เช…เชธเชฐ เช•เชฐเซ‡ เช›เซ‡ เชคเซ‡ เชนเชตเซ‡ เชฐเชจเชŸเชพเช‡เชฎ เชชเชฐ เช…เชจเซเชฎเชพเชจเชฟเชค เช›เซ‡ เช…เชจเซ‡ เช‡เชจเชชเซเชŸ เชกเซ‡เชŸเชพ เชชเชฐ เช†เชงเชพเชฐ เชฐเชพเช–เซ‡ เช›เซ‡. เชซเช‚เช•เซเชถเชจ เชชเซ‹เช‡เชจเซเชŸเชฐ::align_offset, เชœเซ‡ เชชเซ‹เช‡เชจเซเชŸเชฐเชจเซ‡ เชธเช‚เชฐเซ‡เช–เชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช“เชซเชธเซ‡เชŸเชจเซ€ เช—เชฃเชคเชฐเซ€ เช•เชฐเซ‡ เช›เซ‡, เชนเชตเซ‡ เชœเซ‹ เช“เชชเชฐเซ‡เชถเชจ เชจเชฟเชทเซเชซเชณ เชœเชพเชฏ เชคเซ‹ เชœ usize::MAX เชชเชฐเชค เช•เชฐเซ‡ เช›เซ‡. เชซเช‚เช•เซเชถเชจ เชธเซเชฒเชพเชˆเชธ::align_to เช…เชจเซ‡ slice::align_to_mut เชฌเช‚เชจเซ‡, เชœเซ‡ เชธเซเชฒเชพเชˆเชธเชจเซ‡ เชธเช‚เชฐเซ‡เช–เชฟเชค เชฎเชงเซเชฏ เชธเซเชฒเชพเชˆเชธ เช…เชจเซ‡ เชฎเซ‚เชณ เชถเชฐเซ‚เช†เชค เช…เชจเซ‡ เช…เช‚เชค เชธเซเชฒเชพเชˆเชธ เชธเชพเชฅเซ‡ เชฐเชœเซ‚เช†เชคเชฎเชพเช‚ เชฐเซ‚เชชเชพเช‚เชคเชฐเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เชนเชตเซ‡ เชนเช‚เชฎเซ‡เชถเชพ เชธเซŒเชฅเซ€ เชฎเซ‹เชŸเซ‹ เชฎเชงเซเชฏเชฎ เชญเชพเช— เชชเชฐเชค เช•เชฐเซ‡ เช›เซ‡.
  • เชจเซ€เชšเซ‡เชจเชพเชจเซ‡ เชธเซเชฅเชฟเชฐ เชถเซเชฐเซ‡เชฃเซ€เชฎเชพเช‚ เชธเซเชฅเชพเชจเชพเช‚เชคเชฐเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เชนเชคเชพ:
    • &Stdin เชฎเชพเชŸเซ‡ impl เชตเชพเช‚เชšเซ‹
    • เช•เซ‡เชŸเชฒเชพเช• std::error:: เชญเซ‚เชฒ-เชธเช‚เชฌเช‚เชงเชฟเชค เช…เชฎเชฒเซ€เช•เชฐเชฃเซ‹ เชฎเชพเชŸเซ‡ เชฌเชฟเชจ-เชธเซเชฅเชฟเชฐ (เชฌเชฟเชจ-เชธเซเชฅเชฟเชฐ) เชœเซ€เชตเชจเช•เชพเชณเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‹.
    • Impl เช…เชฎเชฒเซ€เช•เชฐเชฃ ?เช•เชฆเชจเชพ เชฎเซ‚เชฒเซเชฏเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช›เซ‡.
    • impl เชฅเซ€ io::เชญเซ‚เชฒ เชฎเชพเชŸเซ‡
  • เช…เชตเชฐเซ‹เชง::new() เชซเช‚เช•เซเชถเชจเชจเซ‡ เชธเซเชฅเชฟเชฐเชพเช‚เช•เซ‹เชจเซ‡ เชฌเชฆเชฒเซ‡ เช•เซ‹เชˆเชชเชฃ เชธเช‚เชฆเชฐเซเชญเชฎเชพเช‚ "const" เชฒเช•เซเชทเชฃ เชธเชพเชฅเซ‡ เช‰เชชเชฏเซ‹เช—เชฎเชพเช‚ เชฒเซ‡เชตเชพ เชฎเชพเชŸเซ‡ เชธเซเชฅเชฟเชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡.
  • เชฒเช•เซเชทเซเชฏ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชฎเชพเชŸเซ‡ x86_64-pc-windows-msvc, i686-pc-windows-msvc, x86_64-pc-windows-gnu, i686-pc-windows-gnu, x86_64-pc-windows-gnullvm เช…เชจเซ‡ i686-pc-windows-gnullvm เช…เชจเซ‡ i10-pc-pc-windows-gnu เชนเชตเซ‡ เช“เช›เชพเชฎเชพเช‚ เช“เช›เชพ Windows XNUMX เชธเช‚เชธเซเช•เชฐเชฃเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.
  • เช†เชงเชพเชฐเชจเซเช‚ เชคเซเชฐเซ€เชœเซเช‚ เชธเซเชคเชฐ wasm32-wasip2, arm64ec-pc-windows-msvc, armv8r-none-eabihf เช…เชจเซ‡ loongarch64-unknown-linux-musl เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชฎเชพเชŸเซ‡ เชฒเชพเช—เซ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡. เชคเซเชฐเซ€เชœเชพ เชธเซเชคเชฐเชฎเชพเช‚ เชฎเซ‚เชณเชญเซ‚เชค เช†เชงเชพเชฐเชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เชฅเชพเชฏ เช›เซ‡, เชชเชฐเช‚เชคเซ เชธเซเชตเชฏเช‚เชธเช‚เชšเชพเชฒเชฟเชค เชชเชฐเซ€เช•เซเชทเชฃ เชตเชฟเชจเชพ, เชธเชคเซเชคเชพเชตเชพเชฐ เชฌเชฟเชฒเซเชก เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเชตเชพ เช…เชฅเชตเชพ เช•เซ‹เชก เชฌเชจเชพเชตเซ€ เชถเช•เชพเชฏ เช›เซ‡ เช•เซ‡ เช•เซ‡เชฎ เชคเซ‡ เชคเชชเชพเชธเซเชฏเชพ เชตเชฟเชจเชพ.
  • เชฒเช•เซเชทเซเชฏ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ Add wasm32-wasip1 เชฎเชพเชŸเซ‡ เชธเชฎเชฐเซเชฅเชจเชจเซเช‚ เชฌเซ€เชœเซเช‚ เชธเซเชคเชฐ เชฒเชพเช—เซ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡. เชธเชชเซ‹เชฐเซเชŸเชจเชพ เชฌเซ€เชœเชพ เชธเซเชคเชฐเชฎเชพเช‚ เชเชธเซ‡เชฎเซเชฌเชฒเซ€ เช—เซ‡เชฐเช‚เชŸเซ€ เชถเชพเชฎเซ‡เชฒ เช›เซ‡.
  • เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ wasm32-wasi-preview1-threads เชจเซเช‚ เชจเชพเชฎ เชฌเชฆเชฒเซ€เชจเซ‡ wasm32-wasip1-threads เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡.
  • เช•เชฎเซเชชเชพเช‡เชฒเชฐเชจเซ‡ LLVM 18 เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเซเชตเชฟเชš เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡. x18-86 เช…เชจเซ‡ x32-86 เช†เชฐเซเช•เชฟเชŸเซ‡เช•เซเชšเชฐ เชฎเชพเชŸเซ‡ LLVM 64 เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชคเซ€ เชตเช–เชคเซ‡, u128 เช…เชจเซ‡ i128 เชชเซเชฐเช•เชพเชฐเซ‹ เชธเชพเชฅเซ‡ เชธเช‚เช•เชณเชพเชฏเซ‡เชฒ ABI เชฌเชฆเชฒเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡.
  • เช•เชพเชฐเซเช—เซ‹ เชชเซ‡เช•เซเชŸ เชฎเซ‡เชจเซ‡เชœเชฐเชฎเชพเช‚, เชฒเซ‹เช• เชซเชพเช‡เชฒเซ‹ (เชฒเซ‹เช• เชซเชพเช‡เชฒ v4) เชจเซเช‚ เชธเช‚เชธเซเช•เชฐเชฃ 4 เชธเซเชฅเชฟเชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡.
  • เช•เชพเชฐเซเช—เซ‹ เชชเชพเชธเซ‡ เชจเชตเซ€เชจเชคเชฎ เชกเซ‡เชŸเชพ เชตเชชเชฐเชพเชถ เชตเชฟเชถเซ‡เชจเซ€ เชฎเชพเชนเชฟเชคเซ€ เชธเชพเชฅเซ‡ เชธเซเชฅเชฟเชฐ เชตเซˆเชถเซเชตเชฟเช• เช•เซ‡เชถ เช›เซ‡. เช•เซ‡เชถ SQLite เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ $CARGO_HOME/.global-cache เชฎเชพเช‚ เชนเซ‹เชธเซเชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เช‡เชจเซเชกเซ‡เช•เซเชธ, เช•เซเชฐเซ‡เชŸ เชซเชพเช‡เชฒ, เช•เซ‹เชก เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€, เช—เชฟเชŸ เช•เซเชฒเซ‹เชจ เช…เชจเซ‡ เช—เชฟเชŸ เชšเซ‡เช•เช†เช‰เชŸเชฎเชพเช‚ เชจเชตเซ€เชจเชคเชฎ เชซเซ‡เชฐเชซเชพเชฐเซ‹เชจเซ‡ เชชเซเชฐเชคเชฟเชฌเชฟเช‚เชฌเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช†เชชเชฎเซ‡เชณเซ‡ เช…เชชเชกเซ‡เชŸ เชฅเชพเชฏ เช›เซ‡.

เชตเชงเซเชฎเชพเช‚, เชฌเซ‹เชฐเซเช—เซ‹ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชญเชพเชทเชพ เช—เซ‹ เชญเชพเชทเชพ เช•เชฐเชคเชพเช‚ เชตเชงเซ เช…เชญเชฟเชตเซเชฏเช•เซเชค เชฌเชจเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เชฐเชธเซเชŸ เชญเชพเชทเชพ เช•เชฐเชคเชพเช‚ เช“เช›เซ€ เชœเชŸเชฟเชฒ เช›เซ‡. เชฌเซ‹เชฐเซเช—เซ‹ เช—เซ‹ เช…เชจเซ‡ เชฐเชธเซเชŸเชจเซ€ เชถเซเชฐเซ‡เชทเซเช  เชธเซเชตเชฟเชงเชพเช“เชจเซ‡ เชœเซ‹เชกเซ‡ เช›เซ‡, เชœเซ‡ เชฆเชฐเซ‡เช• เชญเชพเชทเชพเชจเซ€ เช–เชพเชฎเซ€เช“เชจเซ‡ เชฆเซ‚เชฐ เช•เชฐเซ‡ เช›เซ‡. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เช—เซ‹ เชธเชฐเชณ เช…เชจเซ‡ เชธเซ€เชงเซเช‚ เช›เซ‡, เชชเชฐเช‚เชคเซ เช…เชฆเซเชฏเชคเชจ เชชเซเชฐเช•เชพเชฐเชจเซ€ เชธเชฒเชพเชฎเชคเซ€ เชธเซเชตเชฟเชงเชพเช“ เชชเซเชฐเชฆเชพเชจ เช•เชฐเชคเซเช‚ เชจเชฅเซ€. เชฐเชธเซเชŸ เชญเชพเชทเชพ เชธเชฒเชพเชฎเชค เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชฎเชพเชŸเซ‡ เชธเชพเชงเชจเซ‹ เชชเซเชฐเชฆเชพเชจ เช•เชฐเซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡ เชตเชงเซ เชœเชŸเชฟเชฒ เช›เซ‡. เช† เชชเซเชฐเซ‹เชœเซ‡เช•เซเชŸ เชง เชธเชฟเชฎเซเชชเชฒ เชนเชพเชธเซเช•เซ‡เชฒ เชนเซ‡เชจเซเชกเชฌเซเช•เชจเชพ เชฒเซ‡เช–เช• เช…เชจเซ‡ เช•เซเชตเชพเชก เชธเซ€เช†เชˆ เชธเชคเชค เชเช•เซ€เช•เชฐเชฃ เชธเชฟเชธเซเชŸเชฎเชจเชพ เชกเซ‡เชตเชฒเชชเชฐ เชฎเชพเชฐเซเช•เซ‹ เชธเซ‡เชฎเซเชชเซ‡เชฒเช—เซเชฐเชฟเชจเซ€ เชฆเซเชตเชพเชฐเชพ เชตเชฟเช•เชธเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชฐเชนเซเชฏเซ‹ เช›เซ‡.

เชฐเชธเซเชŸ 1.78 เชฐเชฟเชฒเซ€เช. เชฌเซ‹เชฐเซเช—เซ‹ เชญเชพเชทเชพ เช•เซ‡ เชœเซ‡ เช—เซ‹ เช…เชจเซ‡ เชฐเชธเซเชŸเชจเซ€ เชถเช•เซเชคเชฟเช“เชจเซ‡ เชœเซ‹เชกเซ‡ เช›เซ‡

เชฌเซ‹เชฐเซเช—เซ‹ เชธเซเชŸเซ‡เชŸเชฟเช• เชŸเชพเช‡เชชเชฟเช‚เช—, เช—เซ‹-เชœเซ‡เชตเชพ เชชเซเชฐเช•เชพเชฐเซ‹ เช…เชจเซ‡ เชฐเชธเซเชŸ-เชœเซ‡เชตเชพ เชธเชฟเชจเซเชŸเซ‡เช•เซเชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡. เชฌเซ‹เชฐเซเช—เซ‹ เช•เซ‹เชกเชฎเชพเช‚ เชฐเซ‡เช–เชพเช“เชจเชพ เช…เช‚เชคเซ‡ เช…เชฐเซเชงเชตเชฟเชฐเชพเชฎ เชตเซˆเช•เชฒเซเชชเชฟเช• เช›เซ‡. เชฌเซ‹เชฐเซเช—เซ‹ เช•เซ‹เชกเชจเซ‡ Go เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเชคเซเชตเชฎเชพเช‚ เช•เชฎเซเชชเชพเชˆเชฒ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช›เซ‡ เชœเซ‡ เชนเชพเชฒเชจเชพ Go เชชเซ‡เช•เซ‡เชœเซ‹ เชธเชพเชฅเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชฐเซ€เชคเซ‡ เชธเซเชธเช‚เช—เชค เช›เซ‡. เช•เชฎเซเชชเชพเช‡เชฒเชฐ เช•เซ‹เชก เชฐเชธเซเชŸเชฎเชพเช‚ เชฒเช–เชพเชฏเซ‡เชฒ เช›เซ‡ เช…เชจเซ‡ ISC เชฒเชพเชฏเชธเชจเซเชธ เชนเซ‡เช เชณ เชตเชฟเชคเชฐเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. fmt enum NetworkState เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹ { เชฒเซ‹เชกเชฟเช‚เช—, เชจเชฟเชทเซเชซเชณ(int), Success(T), } เชธเซเชŸเซเชฐเช•เซเชšเชฐ เชฐเชฟเชธเซเชชเซ‹เชจเซเชธ { title: string, duration: int, } fn main() { let res = Response { title: โ€œHello worldโ€, duration: 0, } let state = NetworkState.Success(res) เชšเชพเชฒเซ‹ msg = เชฎเซ‡เชš เชธเซเชฅเชฟเชคเชฟ { NetworkState.Loading => โ€œเชนเชœเซ เชฒเซ‹เชก เชฅเชˆ เชฐเชนเซเชฏเซเช‚ เช›เซ‡โ€, NetworkState.Failed(code) => fmt.Sprintf(โ€œเช—เซ‹เชŸ เชเชฐเชฐ เช•เซ‹เชก: %dโ€, เช•เซ‹เชก), NetworkState.Success (res) => res.title, } fmt.Println(msg) }

เชธเซ‹เชฐเซเชธ: opennet.ru

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹