Paths

๊ฒฝ๋กœ๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค:

  1. ์ƒ๋Œ€๊ฒฝ๋กœ
  • foo ๋˜๋Š” self::foo๋Š” foo๋ชจ๋“ˆ ์•ˆ์—์„œ ํ˜„์žฌ ๋ชจ๋“ˆ์„ ๊ฐ€๋ฆฌํ‚ต๋‹ˆ๋‹ค.
  • super::foo๋Š” foo๋ชจ๋“ˆ์˜ ๋ถ€๋ชจ ๋ชจ๋“ˆ์„ ๊ฐ€๋ฆฌํ‚ต๋‹ˆ๋‹ค.
  1. ์ ˆ๋Œ€ ๊ฒฝ๋กœ
  • crate::foo๋Š” ํ˜„์žฌ ํฌ๋ ˆ์ดํŠธ ๋ฃจํŠธ์˜ ์žˆ๋Š” foo๋ฅผ ๊ฐ€๋ฆฌํ‚ต๋‹ˆ๋‹ค.
  • bar::foo๋Š” barํฌ๋ ˆ์ดํŠธ ์•ˆ์— ์žˆ๋Š” foo๋ฅผ ๊ฐ€๋ฆฌํ‚ต๋‹ˆ๋‹ค.

Paths are resolved as follows:

  1. As a relative path:

    • foo or self::foo refers to foo in the current module,
    • super::foo refers to foo in the parent module.
  2. As an absolute path:

    • crate::foo refers to foo in the root of the current crate,
    • bar::foo refers to foo in the bar crate.

์—ญ์ฃผ

  • crate: ๋Ÿฌ์ŠคํŠธ์˜ ๊ธฐ๋ณธ ํŒจํ‚ค์ง€ ํ˜น์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋‹จ์œ„์ž…๋‹ˆ๋‹ค. std๋ฅผ ๊ธฐ๋ณธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ / ๊ธฐ๋ณธ ํฌ๋ ˆ์ดํŠธ ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.