Rust์ ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ ํฌ์ธํฐ๋ฅผ ์กฐ์ํ ๋ ์ค๋ฅ๋ฅผ ์ ๊ฑฐํ๊ณ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ด ํด์ ๋ ํ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ์ก์ธ์คํ๋ ๊ฒ, ๋ ํฌ์ธํฐ ์ญ์ฐธ์กฐ, ๋ฒํผ ์ค๋ฒ๋ฐ ๋ฑ๊ณผ ๊ฐ์ ์ ์์ค ๋ฉ๋ชจ๋ฆฌ ์กฐ์์ผ๋ก ์ธํด ๋ฐ์ํ๋ ๋ฌธ์ ๋ก๋ถํฐ ๋ณดํธํฉ๋๋ค. ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ฐฐํฌํ๊ณ ์ด์
๋ธ๋ฆฌ๋ฅผ ๋ณด์ฅํ๋ฉฐ ํ๋ก์ ํธ๋ณ ์ข
์์ฑ์ ๊ด๋ฆฌํ๊ธฐ ์ํด ํจํค์ง ๊ด๋ฆฌ์๊ฐ ๊ฐ๋ฐ๋๊ณ ์์ต๋๋ค.
์ ๋ฆด๋ฆฌ์ค ๋ฐํ ํ
์คํธ์์ Rust ๊ฐ๋ฐ์๋ ์ ์น์ ๊ด์ฌํ์ผ๋ฉฐ ๊ฒฝ์ฐฐ ํญ๋ ฅ์ ๋ฐ๋ํ๋ ์์๋์์ ์ฐ๋์ ํ์๋ก Rust 1.44์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ํ ์ ์ฒด ๋ฆฌ๋ทฐ ๊ฒ์๋ฅผ ๊ฑฐ๋ถํ์ผ๋ฉฐ ์ด๋ ์ด ๋ฌธ์ ๊ฐ ๋ ์ค์ํ๋ค๋ ๊ฒ์ ๋ํ๋
๋๋ค. ๊ธฐ์ ์ ์ธ ์ง์์ ๊ตํ๋ณด๋ค ๊ธฐ์ด์ ์ธ
- Cargo ํจํค์ง ๊ด๋ฆฌ์๋ ํธ๋ฆฌ์ ๊ฐ์ ์ข
์์ฑ ๊ทธ๋ํ๋ฅผ ํ์ํ๋ "cargo tree" ๋ช
๋ น์ ํตํฉํฉ๋๋ค. ๋ํ ๋์ผํ ํจํค์ง์ ๋ค๋ฅธ ๋ฒ์ ์์ ์ข
์์ฑ์ ํ๊ฐํ ์ ์๋ "โduplicates"("cargo tree -d") ์ต์
๋ ์ถ๊ฐ๋์์ต๋๋ค.
mdbook v0.3.2 (/Users/src/rust/mdbook)
โโโ ์๋ชจ๋์ v3.0.0
โ โโโ html5ever v0.24.0
โ โ โโโ ๋ก๊ทธ v0.4.8
โ โ โ โโโ cfg-if v0.1.9
โ โ โโโ ๋งฅ v0.1.1
โ โ โโโ markup5ever v0.9.0
โ โ โโโ ๋ก๊ทธ v0.4.8 (*)
โ โ โโโ phf v0.7.24
โ โ โ โโโ phf_shared v0.7.24
โ โ โ โโโ ์ํ์ v0.2.3
โ โ โ โโโ ์ ๋์ผ์ด์ค v1.4.2
โ โ โ [๋น๋ ์ข ์์ฑ] โ โ โ โโโ version_check v0.1.5
... - std("#![no_std]")์ ๋ฐ์ธ๋ฉ๋์ง ์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฒฝ์ฐ ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ์ ์ ๋ํ ์ง์์ "async" ํจ์, async move { ... } ๋ธ๋ก ๋ฐ ".await" ์ฐ์ฐ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌํ๋ฉ๋๋ค. ๋น์ฐจ๋จ ์ฒ๋ฆฌ๊ธฐ ๊ธฐ๋ณธ ๋ช ๋ น ํ๋ฆ ์์ฑ์ ๋จ์ํํฉ๋๋ค.
- ํ์ฅ ๊ฐ๋ฅํ ๋ชจ๋ ๊ณ์ธต ๊ตฌ์กฐ ์ ์ ์ฒด๊ณ์ ๋ํ ์ง์์ด ํ์์ ์ถ๊ฐ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๋ค์ ๊ตฌ์ฑ์ "foo/bar/baz.rs" ๋ชจ๋์ด ์ค์ ๋ก ์์์๋ ๋ถ๊ตฌํ๊ณ ์ค๋ฅ๋ฅผ ์์ฑํ์ง ์์ต๋๋ค(๊ตฌ์ฑ์ ์ฌ์ ํ โโ์๋ฏธ์ ์ ํจํ์ง ์์ผ๋ฉฐ ์ค๋ฅ๋ฅผ ์ผ์ผํฌ ์ ์์ง๋ง ๋ค์ ์์น์์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ณด๊ณ ๊ตฌ๋ฌธ ๋ถ์ํ ์ ์์ต๋๋ค). ๋งคํฌ๋ก ๋ฐ ์กฐ๊ฑด๋ถ ์ปดํ์ผ ์์ค):
#[cfg(FALSE)] mod foo {
๋ชจ๋ ๋ฐ {
๋ชจ๋ ๋ฐ์ฆ;
}
} - Rustc ์ปดํ์ผ๋ฌ์๋ ์ฆ๋ถ ๋ชจ๋์์ "-C codegen-units" ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ๋ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์์ต๋๋ค. unwinding ํ๋ก์ธ์ค๊ฐ ๋นํ์ฑํ๋๊ณ ์์ธ๊ฐ ๋ฐ์ํ์ง ์๋ ๊ฒฝ์ฐ ์ฑ๋ฅ์ ์ํฅ์ ์ฃผ์ง ์๋๋ก catch_unwind ๊ตฌํ์ด ์ฌ์์ ๋์์ต๋๋ค.
- aarch64-unknown-none, aarch64-unknown-none-softfloat, arm64-apple-tvos ๋ฐ x86_64-apple-tvos ํ๋ซํผ์ ๋ํด ๋ ๋ฒจ XNUMX ์ง์์ด ์ ๊ณต๋์์ต๋๋ค. ์ธ ๋ฒ์งธ ์์ค์๋ ๊ธฐ๋ณธ ์ง์์ด ํฌํจ๋์ง๋ง ์๋ํ๋ ํ ์คํธ ๋ฐ ๊ณต์ ๋น๋ ๊ฒ์๋ ํฌํจ๋์ง ์์ต๋๋ค.
- ์์ ํ๋ API๋ฅผ ํฌํจํ์ฌ API์ ์๋ก์ด ๋ถ๋ถ์ด ์์ ์ ์ธ ๋ฒ์ฃผ๋ก ์ด์ ๋์์ต๋๋ค.
PathBuf::with_capacity,
PathBuf::์ฉ๋,
PathBuf::์ง์ฐ๊ธฐ,
PathBuf::์์ฝ,
PathBuf::reserve_exact,
PathBuf::shrink_to_fit,
{f32|f64}::to_int_unchecked,
๋ ์ด์์::align_to,
๋ ์ด์์::pad_to_align,
๋ ์ด์์::๋ฐฐ์ด ๋ฐ
๋ ์ด์์::ํ์ฅ. - ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํ์ฅ ๊ธฐ๋ฅ:
- Vec::new()์ ์ง์ ๋ฐ์๋๋ ํน๋ณํ "vec![]" ๋ณํ์ ์ถ๊ฐํ์ฌ "vec![]"๋ฅผ ์์ ๋์ ์ปจํ ์คํธ์์ ์ฌ์ฉํ ์ ์๋๋ก ํ์ต๋๋ค.
- ๋ณํ::Infallible์ ํน์ฑ์ ๊ตฌํ(impl)์ด ์ถ๊ฐ๋์์ต๋๋ค.
ํด์ . - OsString์ ์ค๋งํธ ํฌ์ธํฐ๋ฅผ ๊ตฌํํฉ๋๋ค.
DerefMut ะธIndexMut , "&mut OsStr"์ ๋ฐํํฉ๋๋ค. - ์ ๋์ฝ๋ 13์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- ๋ฌธ์์ด๋ก ๊ตฌํ๋จ
<&mut str>์์ . - IoSlice๋ ํน์ฑ์ ๊ตฌํํฉ๋๋ค.
๋ถ . - ๋ฒ ํฌ ๊ตฌํ๋จ <[T; N]>.
- proc_macro::LexError๋ fmt::Display ๋ฐ Error๋ฅผ ๊ตฌํํฉ๋๋ค.
- ์์ ๋์ ๋ชจ๋ ์ปจํ ์คํธ์์ ์ฌ์ฉํ ์ ์๋์ง ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํ๋ "const" ์์ฑ์ ๋ชจ๋ ์ ์ ์ ํ์ ๋ํด from_le_bytes, to_le_bytes, from_be_bytes, to_be_bytes, from_ne_bytes ๋ฐ to_ne_bytes ๋ฉ์๋์ ์ฌ์ฉ๋ฉ๋๋ค.
- Windows์ GNU ํ๋ซํผ์ ๋ํด ".lib" ๋์ ".a" ํ์์ผ๋ก ์ ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์์ฑํ๊ธฐ ์ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- LLVM์ ์ต์ ์๊ตฌ ์ฌํญ์ด LLVM ๋ฒ์ 8๋ก ์ํฅ๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru