Write Powerful Rust Macros (True/Retail)
Write Powerful Rust Macros (True/Retail)
English | 2024 | ISBN: 1633437493 | 320 pages | True/Retail EPUB | 9.17 MB
An example-driven, step-by-step guide to success with Rust macros.
InWrite Powerful Rust Macros you’ll learn how to use these amazing metaprogramming tools to push Rust to its full potential. This hands-on guide takes you from the absolute basics to advanced macro techniques, exploring Rust macros through interesting and engaging examples.
InsideWrite Powerful Rust Macros you’ll discover
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.
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
About the readerFor intermediate Rust programmers.
About the author
Sam Van Overmeire is an experienced Rust developer and the author of multiple books, scientific articles and blog posts.
The technical editor on this book wasAndrew Lilley Brinker.
Table of contents
1 Going meta
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