#[macro_export]
macro_rules! tt_true {
{
$caller:tt
input = [{ $($in:tt)* }]
} => {
$crate::tt_return! {
$caller
output = [{ true }]
}
}
}
#[macro_export]
macro_rules! tt_false {
{
$caller:tt
input = [{ $($in:tt)* }]
} => {
$crate::tt_return! {
$caller
output = [{ false }]
}
}
}
#[macro_export]
macro_rules! tt_is_comma {
{
$caller:tt
input = [{ , }]
} => {
$crate::tt_return! {
$caller
is_comma = [{ true }]
}
};
{
$caller:tt
input = [{ $other:tt }]
} => {
$crate::tt_return! {
$caller
is_comma = [{ false }]
}
};
}
#[macro_export]
macro_rules! tt_is_ident {
{
$caller:tt
input = [{ $ident:ident }]
} => {
$crate::tt_return! {
$caller
is_ident = [{ true }]
}
};
{
$caller:tt
input = [{ $other:tt }]
} => {
$crate::tt_return! {
$caller
is_ident = [{ false }]
}
};
}
#[macro_export]
macro_rules! tt_is_lifetime {
{
$caller:tt
input = [{ $lifetime:lifetime }]
} => {
$crate::tt_return! {
$caller
is_lifetime = [{ true }]
}
};
{
$caller:tt
input = [{ $other:tt }]
} => {
$crate::tt_return! {
$caller
is_lifetime = [{ false }]
}
};
}