Reasoning about Rust: an introduction to Rustdoc’s JSON format


Details
Tonight we'll be having an online talk from Luca Palmieri (see Speaker bio) on "Reasoning about Rust: an introduction to Rustdoc’s JSON format":
"Macros are the primary mechanism for metaprogramming in Rust, either to perform code generation or enforce constraints at compile-time that are not easily captured by the type system (e.g. sqlx).
Macros are also limited: their input is a stream of tokens, with no type-level information.
Up until last year, you had to hook directly into the compiler internals to get a more featureful representation. This is no longer the case, thanks to Rustdoc’s JSON format: an information-rich representation of your Rust API in a machine-parsable format (with a versioned schema!).
We will introduce the feature, look at the structure of the data and cover a few of the usecases where it shines. You will leave the talk with a basic understanding of the format and ideas on how you could leverage it to build tools that enhance your own Rust workflows."
Plan for the evening
- 17:45: Zoom calls opens
- 18:00: Quick intro to Rust Meetup Edinburgh
- 18:05: Talk starts
- 18:30: Open Q/A
- 19:00: Event ends

Reasoning about Rust: an introduction to Rustdoc’s JSON format