선언적 매크로
러스트에서 매크로는 이름 끝에 있는 느낌표로 구분할 수 있다. 이는 선언적 매크로나 유사 함수 절차적 매크로(다른 매크로 타입인 절차적 매크로와는 다름)를 나타낸다. 가장 유명한 선언적 매크로는 러스트를 처음 쓸 때 사용했던 것으로 콘솔에 텍스트를 출력하는 println!이다.
매크로는 캡슐화된 코드와 함께 표준 러스트 코드를 생성한다. 이는 컴파일러가 모든 러스트 코드를 가져와 바이너리를 생성하기 직전에 일어난다.
거의 규칙이 없는 새로운 세계로 들어가야 하겠지만, 자신만의 매크로를 만들 수도 있다. 단, 자신만의 매크로를 만들려면 여러분이 먼저 표준 러스트에 충분히 능숙해져야 한다.
이제 우리는 Debug 트레이트를 파생시킨다. 그런 다음 println!에서 {} 대신에 {:?}를 사용해서 Debug를 사용한다. 업데이트된 코드는 다음과 같다. 프로그램을 실행하면 콘솔에서 질문 내용을 볼 수 있다(지금은 경고를 무시한다).