Enum gong::ItemClass
[−]
[src]
pub enum ItemClass<'a> { Ok(Item<'a>), Warn(ItemW<'a>), Err(ItemE<'a>), }
The possible classes of items identified and extracted from command line arguments.
This breaks down items to three classes - okay/warn/error - with each variant holding an
Item
, ItemW
or ItemE
variant which more specifically represents what was found.
We use a class wrapper rather than grouping items into separate vectors because a single vector preserves order more simply. We break up item variants into groups for the advantages in matching.
All sub-variants hold a usize
value to be used for indicating the index of the argument at
which the item was found.
Most sub-variants also hold additional data. Long option sub-variants hold a string slice
reference to the matched option. Short option sub-variants hold the char
matched. Options with
data arguments additionally hold a string slice reference to the data string matched, and in
some cases also a DataLocation
variant. The NonOption
sub-variant holds a string slice
reference to the matched string.
Variants
Ok(Item<'a>)
Non-problematic item
Warn(ItemW<'a>)
Warn-level item
Err(ItemE<'a>)
Error-level item
Trait Implementations
impl<'a> Debug for ItemClass<'a>
[src]
impl<'a> Clone for ItemClass<'a>
[src]
fn clone(&self) -> ItemClass<'a>
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<'a> Copy for ItemClass<'a>
[src]
impl<'a> PartialEq for ItemClass<'a>
[src]
fn eq(&self, __arg_0: &ItemClass<'a>) -> bool
[src]
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &ItemClass<'a>) -> bool
[src]
This method tests for !=
.