1mod traits;
2pub use traits::*;
3
4pub use helpers::*;
5
6#[doc(hidden)]
7pub use derive::{Annotation, AnnotationEnumValue};
8
9#[cfg(any(feature = "annotation_reader"))]
10pub use derive::{__get_annotation, __has_annotation, generate_reader};
11
12#[cfg(any(feature = "annotation_reader"))]
13#[macro_export]
14macro_rules! get_annotation {
15 ($class: ident, $annotation: ident) => {
16 $crate::__get_annotation!($class, $annotation)
17 };
18 ($class: ident :: $prop: ident, $annotation: ident) => {
19 $crate::__get_annotation!($class, $annotation, $prop)
20 };
21}
22
23#[cfg(any(feature = "annotation_reader"))]
24#[macro_export]
25macro_rules! has_annotation {
26 ($class: ident :: $prop: ident, $annotation: ident) => {
27 $crate::__has_annotation!($class, $annotation, $prop)
28 };
29 ($class: ident, $annotation: ident) => {
30 $crate::__has_annotation!($class, $annotation)
31 };
32}