Enum valuable::Fields[][src]

pub enum Fields<'a> {
    Named(&'a [NamedField<'a>]),
    Unnamed(usize),
}
Expand description

Data stored within a Structable or an Enumerable.

Variants

Named(&'a [NamedField<'a>])

Tuple Fields

Named fields

Unnamed(usize)

Tuple Fields

0: usize

Unnamed (positional) fields or unit

The usize value represents the number of fields.

Implementations

Returns true if the fields are named.

Examples

Named fields

use valuable::Fields;

let fields = Fields::Named(&[]);
assert!(fields.is_named());

Unnamed fields

use valuable::Fields;

let fields = Fields::Unnamed(2);
assert!(!fields.is_named());

Returns true if the fields are unnamed.

Examples

Named fields

use valuable::Fields;

let fields = Fields::Named(&[]);
assert!(!fields.is_unnamed());

Unnamed fields

use valuable::Fields;

let fields = Fields::Unnamed(3);
assert!(fields.is_unnamed());

Returns the number of fields.

Examples

Named fields

use valuable::{Fields, NamedField};

let fields = &[
    NamedField::new("alice"),
    NamedField::new("bob"),
];
let fields = Fields::Named(fields);

assert_eq!(fields.len(), 2);

Unnamed fields

use valuable::Fields;

let fields = Fields::Unnamed(2);
assert_eq!(fields.len(), 2);

Returns true if this set of fields defines no fields.

Examples

Named fields

use valuable::{Fields, NamedField};

let fields = &[
    NamedField::new("alice"),
    NamedField::new("bob"),
];
let non_empty = Fields::Named(fields);

let empty = Fields::Named(&[]);

assert!(!non_empty.is_empty());
assert!(empty.is_empty());

Unnamed fields

use valuable::Fields;

let non_empty = Fields::Unnamed(2);
let empty = Fields::Unnamed(0);

assert!(!non_empty.is_empty());
assert!(empty.is_empty());

Trait Implementations

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.