Skip to main content

define_enum_is_methods

Macro define_enum_is_methods 

Source
macro_rules! define_enum_is_methods {
    ($enum_type:ident, $(($variant:ident, $method:ident)),* $(,)?) => { ... };
}
Expand description

Generate a macro for the is_xxx method for PlanNodeEnum

ยงExamples

use linkrs_query::define_enum_is_methods;

enum MyPlanEnum {
    Start(i32),
    Project(i32),
}

define_enum_is_methods! {
    MyPlanEnum,
    (Start, is_start),
    (Project, is_project),
}

let node = MyPlanEnum::Start(42);
assert!(node.is_start());
assert!(!node.is_project());