| Crates.io | derive-quote-to-tokens |
| lib.rs | derive-quote-to-tokens |
| version | 0.1.1 |
| created_at | 2023-09-22 22:35:10.200841+00 |
| updated_at | 2024-03-17 20:07:10.388957+00 |
| description | derive quote::ToTokens |
| homepage | |
| repository | https://github.com/aatifsyed/derive-quote-to-tokens |
| max_upload_size | |
| id | 980903 |
| size | 6,972 |
#[derive(ToTokens)], calling quote::ToTokens on each field.
Nothing more, nothing less.
use derive_quote_to_tokens::ToTokens;
use quote::{ToTokens, quote};
use proc_macro2::Span;
use syn::{Token, Ident};
#[derive(ToTokens)]
struct Tag {
lt: Token![<],
inner: Ident,
gt: Token![>],
}
let tag = /* snip */
assert_eq!(
tag.to_token_stream().to_string(),
quote! { <main> }.to_string(),
);
Enums work too.
#[derive(ToTokens)]
enum Arrow {
Left(Token![<], Token![-]),
Right(Token![-], Token![>]),
}