Function vectorize_struct::vectorize_struct [−][src]
pub fn vectorize_struct(types: TokenStream, input: TokenStream) -> TokenStream
Attribute to allow iterating over Trait Objects of every field of a Struct that implements a specific trait.
Example
ⓘThis example is not tested
struct NoDisplay{} #[vectorize_struct(std::fmt::Display)] struct ExampleStruct { i : i32, nd : NoDisplay } fn doc_example() { use vectorized_ExampleStruct::{Vectorize,Fields}; let es = ExampleStruct{ nd: NoDisplay{}, i: 6792, }; for (name, field) in es.vectorize() as Vec<(Fields, Option<&Display>)> { if let Some(field) = field { println!("{:?} can display: {}", name, field); } } }