1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
mod traits;
pub use traits::*;

pub use yui_internal::*;

#[doc(hidden)]
pub use yui_derive::{YuiAttribute, YuiEnumValue};

#[cfg(any(feature = "generate-reader"))]
pub use yui_derive::{__get_attribute, __has_attribute, generate_reader};

#[cfg(any(feature = "generate-reader"))]
#[macro_export]
macro_rules! get_attribute {
    ($class: ident, $attr: ident) => {
        $crate::__get_attribute!($class, $attr)
    };
    ($class: ident :: $prop: ident, $attr: ident) => {
        $crate::__get_attribute!($class, $attr, $prop)
    };
}

#[cfg(any(feature = "generate-reader"))]
#[macro_export]
macro_rules! has_attribute {
    ($class: ident :: $prop: ident, $attr: ident) => {
        $crate::__has_attribute!($class, $attr, $prop)
    };
    ($class: ident, $attr: ident) => {
        $crate::__has_attribute!($class, $attr)
    };
}