| Crates.io | count-tts-inner |
| lib.rs | count-tts-inner |
| version | 0.1.1 |
| created_at | 2025-05-08 12:42:02.456262+00 |
| updated_at | 2025-08-21 09:01:15.478516+00 |
| description | A simple macro for counting any position tokens. |
| homepage | |
| repository | https://github.com/A4-Tacks/count-tts-inner-rs |
| max_upload_size | |
| id | 1665296 |
| size | 5,813 |
Expands to the number of token trees in the inner like macro arguments
Can be used in places where macro expansion is not possible
Similar count_tts crate
Use count_tts failed case:
use count_tts::count_tts;
macro_rules! foo {
($t:literal) => { $t };
}
// Expected literal, `count_tts` `!` `()` is not a literal
assert_eq!(0, foo!(count_tts!()));
assert_eq!(3, foo!(count_tts!(a b c)));
assert_eq!(2, foo!(count_tts!(a (b c))));
assert_eq!(5, foo!(count_tts!(a, b, c)));
Use this crate case:
use count_tts_inner::count_tts_inner;
macro_rules! foo {
($t:literal) => { $t };
}
count_tts_inner! {
assert_eq!(0, foo!(#count_tts()));
assert_eq!(3, foo!(#count_tts(a b c)));
assert_eq!(2, foo!(#count_tts(a (b c))));
assert_eq!(5, foo!(#count_tts(a, b, c)));
}