module lookup

모듈 탐색과 공개 경로

`mod`는 파일을 찾게 만들고, `pub`은 경로를 지나갈 수 있게 만들며, `use`는 긴 경로를 현재 스코프의 이름으로 줄입니다.

1

크레이트 루트

src/main.rs 또는 src/lib.rs에서 모듈 트리의 시작점을 잡습니다.

2

mod garden;

선언이 있어야 컴파일러가 해당 모듈의 코드 위치를 찾습니다.

3

파일 후보

인라인 본문, garden.rs, garden/mod.rs 중 선언에 맞는 코드를 포함합니다.

4

경로 사용

모듈이 트리에 들어오면 공개 규칙에 따라 crate::... 경로로 접근합니다.

찾는 문제
선언

mod vegetables;가 있어야 서브모듈 파일을 읽습니다.

위치

부모 모듈 파일 또는 부모 이름 디렉터리를 기준으로 후보를 고릅니다.

보이는 문제
비공개

기본값은 부모 모듈에게만 보이는 내부 구현입니다.

공개

pub mod, pub struct처럼 경로의 각 문을 열어야 밖에서 쓸 수 있습니다.