#[derive(Debug)]
pub enum StatusStatisticParseError
{
NoValue,
ValueNotPreceededByHorizontalTab,
InvalidLength,
InvalidEnding,
InvalidSeparator,
OutOfRange,
DuplicatedStatistic,
DuplicatedStatisticValue,
NotAValidListOfCpusOrNumaNodes(ListParseError),
NotAValidNumber(ParseNumberError),
NotAValidBitSetAware(BitSetAwareTryFromU16Error),
NotAValidCommandName(ObjectNameFromBytesError),
}
impl Display for StatusStatisticParseError
{
#[inline(always)]
fn fmt(&self, f: &mut Formatter) -> fmt::Result
{
Debug::fmt(self, f)
}
}
impl error::Error for StatusStatisticParseError
{
#[inline(always)]
fn source(&self) -> Option<&(dyn error::Error + 'static)>
{
use self::StatusStatisticParseError::*;
match self
{
&NoValue => None,
&ValueNotPreceededByHorizontalTab => None,
&InvalidLength => None,
&InvalidEnding => None,
&InvalidSeparator => None,
&OutOfRange => None,
&DuplicatedStatistic => None,
&DuplicatedStatisticValue => None,
&NotAValidNumber(ref error) => Some(error),
&NotAValidListOfCpusOrNumaNodes(ref error) => Some(error),
&NotAValidBitSetAware(ref error) => Some(error),
&NotAValidCommandName(ref error) => Some(error),
}
}
}
impl From<ListParseError> for StatusStatisticParseError
{
#[inline(always)]
fn from(error: ListParseError) -> Self
{
StatusStatisticParseError::NotAValidListOfCpusOrNumaNodes(error)
}
}
impl From<ParseNumberError> for StatusStatisticParseError
{
#[inline(always)]
fn from(error: ParseNumberError) -> Self
{
StatusStatisticParseError::NotAValidNumber(error)
}
}
impl From<BitSetAwareTryFromU16Error> for StatusStatisticParseError
{
#[inline(always)]
fn from(error: BitSetAwareTryFromU16Error) -> Self
{
StatusStatisticParseError::NotAValidBitSetAware(error)
}
}
impl From<ObjectNameFromBytesError> for StatusStatisticParseError
{
#[inline(always)]
fn from(error: ObjectNameFromBytesError) -> Self
{
StatusStatisticParseError::NotAValidCommandName(error)
}
}