Декларативные макросы в Rust: полное руководство

Wait 5 sec.

Макросы - это механизм генерации кода во время компиляции. В отличие от макросов в C, где препроцессор работает исключительно на уровне текста, макросы Rust работают с токенами языка, а не с текстом программы. Процедурные макросы получают TokenStream и возвращают новый TokenStream, а декларативные сопоставляют поток токенов с заданными шаблонами. После раскрытия макросов полученный код компилируется так же, как если бы его написал программист вручную. Читать далее