pub struct EnumDecl {
pub doc: Option<Doc>,
pub directives: Directives,
pub visibility: Visibility,
pub posture: Posture,
pub name: Ident,
pub variants: Vec<EnumVariant>,
pub methods: Vec<Method>,
pub span: Span,
}Expand description
An enum declaration.
Like structs, enums may declare inline methods after their variants.
enum Option {
Some(i32),
None,
fn is_some(self) -> bool {
match self { Self::Some(_) => true, Self::None => false }
}
}Fields§
§doc: Option<Doc>ADR-0089: docstring attached to this enum.
directives: DirectivesDirectives applied to this enum (e.g., @derive(...), @lang("ordering")).
visibility: VisibilityVisibility of this enum
posture: PostureDeclared ownership posture (ADR-0080). Affine when neither
@mark(copy) nor @mark(linear) appears in the directive list.
name: IdentEnum name
variants: Vec<EnumVariant>Enum variants
methods: Vec<Method>Methods defined on this enum
span: SpanSpan covering the entire enum declaration
Trait Implementations§
Source§impl<'de> Deserialize<'de> for EnumDecl
impl<'de> Deserialize<'de> for EnumDecl
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for EnumDecl
impl StructuralPartialEq for EnumDecl
Auto Trait Implementations§
impl Freeze for EnumDecl
impl RefUnwindSafe for EnumDecl
impl Send for EnumDecl
impl Sync for EnumDecl
impl Unpin for EnumDecl
impl UnsafeUnpin for EnumDecl
impl UnwindSafe for EnumDecl
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<'src, T> IntoMaybe<'src, T> for Twhere
T: 'src,
impl<'src, T> IntoMaybe<'src, T> for Twhere
T: 'src,
§impl<'p, T> Seq<'p, T> for Twhere
T: Clone,
impl<'p, T> Seq<'p, T> for Twhere
T: Clone,
§type Iter<'a> = Once<&'a T>
where
T: 'a
type Iter<'a> = Once<&'a T> where T: 'a
An iterator over the items within this container, by reference.
§fn contains(&self, val: &T) -> boolwhere
T: PartialEq,
fn contains(&self, val: &T) -> boolwhere
T: PartialEq,
Check whether an item is contained within this sequence.
§fn to_maybe_ref<'b>(item: <T as Seq<'p, T>>::Item<'b>) -> Maybe<T, &'p T>where
'p: 'b,
fn to_maybe_ref<'b>(item: <T as Seq<'p, T>>::Item<'b>) -> Maybe<T, &'p T>where
'p: 'b,
Convert an item of the sequence into a [
MaybeRef].