use crate::*;
pub struct UnitField {
pub attributes: Vec<Attribute>,
}
impl UnitField {
pub fn new(field: Field) -> Self {
Self {
attributes: field.attrs,
}
}
}
pub struct UnnamedField {
pub attributes: Vec<Attribute>,
pub visibility: Visibility,
pub field_type: Type,
}
impl UnnamedField {
pub fn new(field: Field) -> Self {
Self {
attributes: field.attrs,
visibility: field.vis,
field_type: field.ty,
}
}
}
pub struct NamedField {
pub attributes: Vec<Attribute>,
pub visibility: Visibility,
pub identifier: Ident,
pub field_type: Type,
}
impl NamedField {
pub fn new(field: Field) -> Self {
Self {
attributes: field.attrs,
visibility: field.vis,
identifier: field.ident.expect("NamedField has no identifier!"),
field_type: field.ty,
}
}
}