배열로 가는 길에 돌아가는 길이 이렇게 많은데 컴파일러는 어떻게 실제 `array[0]`을 계산할 수 있을까요? 먼저, `array[0]`은 그냥 [`Index`][index] 트레잇을 위한 문법적 설탕입니다 - 컴파일러는 `array[0]`을 `array.index(0)`으로 변환할 겁니다.
배열로 가는 길에 돌아가는 길이 이렇게 많은데 컴파일러는 어떻게 실제 `array[0]`을 계산할 수 있을까요? 먼저, `array[0]`은 그냥 [`Index`][index] 트레잇을 위한 문법적 설탕입니다 - 컴파일러는 `array[0]`을 `array.index(0)`으로 변환할 겁니다.
이제, 컴파일러는 함수를 호출하기 위해 `array`가 `Index`를 구현하는지 봅니다.
이제, 컴파일러는 함수를 호출하기 위해 `array`가 `Index`를 구현하는지 봅니다.
Then, the compiler checks if `Rc<Box<[T; 3]>>` implements `Index`, but it