분석
이 부분에서는 컴파일러가 코드의 다양한 속성을 검사하고 이후 단계에 정보를 제공하는 데 사용하는 여러 분석을 다룹니다. 일반적으로 사람들이 “Rust의 타입 시스템“이라고 말할 때 가리키는 것이 바로 이것입니다. 여기에는 타입의 표현, 추론, 검사와 트레이트 시스템, 그리고 빌림 검사기가 포함됩니다. 이러한 분석은 하나의 큰 패스나 연속된 패스들의 집합으로 이루어지지 않습니다. 오히려 컴파일 과정의 여러 부분에 걸쳐 분산되어 있으며, 서로 다른 중간 표현을 사용합니다. 예를 들어 타입 검사는 HIR에서 이루어지는 반면, 빌림 검사는 MIR에서 이루어집니다. 그럼에도 불구하고 설명의 편의를 위해 가이드의 이 부분에서 이러한 분석을 모두 다루겠습니다.