Enum rustc_typeck::hir::VariantData [] [src]

pub enum VariantData {
    Struct(P<[StructField]>, u32),
    Tuple(P<[StructField]>, u32),
    Unit(u32),
}
Unstable (rustc_private)

Fields and Ids of enum variants and structs

For enum variants: NodeId represents both an Id of the variant itself (relevant for all variant kinds) and an Id of the variant's constructor (not relevant for Struct-variants). One shared Id can be successfully used for these two purposes. Id of the whole enum lives in Item.

For structs: NodeId represents an Id of the structure's constructor, so it is not actually used for Struct-structs (but still presents). Structures don't have an analogue of "Id of the variant itself" from enum variants. Id of the whole struct lives in Item.

Variants

Struct(P<[StructField]>, u32)
Unstable (rustc_private)
Tuple(P<[StructField]>, u32)
Unstable (rustc_private)
Unit(u32)
Unstable (rustc_private)

Methods

impl VariantData

fn fields(&self) -> &[StructField]

fn id(&self) -> u32

fn is_struct(&self) -> bool

fn is_tuple(&self) -> bool

fn is_unit(&self) -> bool

Trait Implementations

Derived Implementations

impl Debug for VariantData

fn fmt(&self, __arg_0: &mut Formatter) -> Result<()Error>

Formats the value using the given formatter.

impl Hash for VariantData

fn hash<__H>(&self, __arg_0: &mut __H) where __H: Hasher

Feeds this value into the state given, updating the hasher as necessary.

fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0

Feeds a slice of this type into the state provided.

impl Decodable for VariantData

fn decode<__D>(__arg_0: &mut __D) -> Result<VariantData, __D::Error> where __D: Decoder

impl Encodable for VariantData

fn encode<__S>(&self, __arg_0: &mut __S) -> Result<(), __S::Error> where __S: Encoder

impl Eq for VariantData

impl PartialEq<VariantData> for VariantData

fn eq(&self, __arg_0: &VariantData) -> bool

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, __arg_0: &VariantData) -> bool

This method tests for !=.

impl Clone for VariantData

fn clone(&self) -> VariantData

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)
1.0.0

Performs copy-assignment from source. Read more