- Writing declarative macros
- Procedural macros
- Reading and debugging macro code
- Improving the type system with newtypes and zero-sized types
- How common Rust libraries use macros
Write Powerful Rust Macros teaches you how to write, test, debug, and publish macros for Rust. It's perfect for Rust practitioners who want to master this powerful development technique. Build your knowledge chapter-by-chapter. You'll start with declarative macros before diving into the real power: procedural macros that can generate code, augment data structures, and even create domain-specific languages. Purchase of the print book includes a free eBook in PDF and ePub formats from Manning Publications. About the technology Macros are one of Rust's most important and powerful tools. Although notoriously challenging, this metaprogramming technique has a big payoff. Using macros to generate new Rust code at compile-time can save you hours of tedious coding with negligible runtime performance impact. This book shows you exactly how to master this Rust superpower. About the book Write Powerful Rust Macros opens up the world of macros to intermediate Rust programmers. You'll start with declarative macros to get the basics under your belt. Then, you'll advance to procedural macros as you automatically generate a builder, learn to create your own domain-specific languages, and more. As you go, you'll develop practical skills like testing macros, integrating macros with crates, and even sharing your macros with other developers. What's inside
- How Rust libraries use macros
- Reading and debugging macro code
- newtypes and the type state pattern
2 Declarative macros
3 A "Hello, World" procedural macro
4 Making fields public with attribute macros
5 Hiding information and creating mini-DSLs with function-like macros
6 Testing a builder macro
7 From panic to result: Error handling
8 Builder with attributes
9 Writing an infrastructure DSL
10 Macros and the outside world