Rust

C - 파생 가능한 트레이트

derive는 러스트에서 코드를 줄여 주는 편의 기능으로 자주 소개되지만, 실제로는 타입 설계 의도를 드러내는 중요한 장치입니다. 어떤 트레이트를 자동 구현할지 결정하는 순간, 해당 타입의 비교 가능성·정렬 가능성·디버깅 전략이 함께 정해집니다.

프로그래머 출력을 위한 Debug와 동등 비교를 위한 PartialEq 및 Eq를 중심으로 C - 파생 가능한 트레이트의 판단 흐름을 읽습니다.

1

부록 C: 파생 가능한 트레이트

이 책의 여러 곳에서 구조체나 열거형 정의에 적용할 수 있는 derive 속성에 대해 설명했습니다.

무엇을 자동화할 수 있는가
2

프로그래머 출력을 위한 Debug

Copy에 대한 더 자세한 내용은 3장의 ‘스택에만 저장되는 데이터: 복사(copy)’절을참고하세요.Copy 트레이트에는 아무 메서드도 정의되어 있지 않은데, 이는...

어떤 의미를 타입에 부여하는가
3

동등 비교를 위한 PartialEq 및 Eq

매크로를 사용할 때 필요한데,이 매크로는 두 인스턴스를 비교하여 동등 여부를 확인할 수 있어야 하기때문입니다.Eq 트레이트에는 메서드가 없습니다.

derive