Skip to content

Instantly share code, notes, and snippets.

To From Method
string of code literal code std::stringify!{}
string of code syntax tree !quote(#syntax_tree).to_string()
string of code TokenStream .to_string()
string of syntax literal code format!("{:?}",parse2::<SynType>(quote! {...}).expect(...)
string of syntax syntax tree format!("{:?}"),…), format!("{:#?}"),…)
string of tokens literal code format!("{:?}",quote! {...})
string of tokens TokenStream format!("{:?}"),…), format!("{:#?}"),…)
syn::Error TokenStream .to_compile_error() [see Rule #7]
syntax tree literal code parse_quote!(…)
@mod7ex
mod7ex / main.rs
Created March 14, 2023 22:47
Borrow checker in rust
fn main() {
let mut s1 = String::from("Hello");
let s2 = &mut s1;
s2.push('!');
// change order of next tow lines and program will not compile
println!("s2 :{}", s2);
println!("s1 :{}", s1);