[][src]Enum aml::AmlError

pub enum AmlError {
    UnexpectedEndOfStream,
    UnexpectedByte(u8),
    InvalidNameSeg,
    InvalidFieldFlags,
    IncompatibleValueConversion,
    UnterminatedStringConstant,
    InvalidStringConstant,
    InvalidRegionSpace(u8),
    WrongParser,
    EmptyNamesAreInvalid,
    InvalidNormalizedName(AmlName),
    RootHasNoParent,
    ObjectDoesNotExist(String),
    HandleDoesNotExist(AmlHandle),
    NameCollision(AmlName),
    InvalidArgumentAccess(u8),
    InvalidLocalAccess(u8),
    Return(AmlValue),
    PrtInvalidAddress,
    PrtInvalidPin,
    PrtInvalidSource,
    PrtInvalidGsi,
    PrtNoEntry,
    ReservedResourceType,
    ResourceDescriptorTooShort,
}

Variants

UnexpectedEndOfStream
UnexpectedByte(u8)
InvalidNameSeg
InvalidFieldFlags
IncompatibleValueConversion
UnterminatedStringConstant
InvalidStringConstant
InvalidRegionSpace(u8)
WrongParser

Emitted by a parser when it's clear that the stream doesn't encode the object parsed by that parser (e.g. the wrong opcode starts the stream). This is handled specially by some parsers such as or and choice!.

EmptyNamesAreInvalid
InvalidNormalizedName(AmlName)

Produced when trying to normalize a path that does not point to a valid level of the namespace. E.g. \_SB.^^PCI0 goes above the root of the namespace. The contained value is the name that normalization was attempted upon.

RootHasNoParent
ObjectDoesNotExist(String)

Produced when a path is given that does not point to an object in the AML namespace.

HandleDoesNotExist(AmlHandle)
NameCollision(AmlName)

Produced when two values with the same name are added to the namespace.

InvalidArgumentAccess(u8)

Produced when a method accesses an argument it does not have (e.g. a method that takes 2 arguments accesses Arg4). The inner value is the number of the argument accessed. If any arguments are accessed when a method is not being executed, this error is produced with an argument number of 0xff.

InvalidLocalAccess(u8)
Return(AmlValue)

This is not a real error, but is used to propagate return values from within the deep parsing call-stack. It should only be emitted when parsing a DefReturn. We use the error system here because the way errors are propagated matches how we want to handle return values.

PrtInvalidAddress
PrtInvalidPin
PrtInvalidSource
PrtInvalidGsi
PrtNoEntry

Produced when the PRT doesn't contain an entry for the requested address + pin

ReservedResourceType
ResourceDescriptorTooShort

Trait Implementations

impl Clone for AmlError[src]

impl Debug for AmlError[src]

impl Eq for AmlError[src]

impl PartialEq<AmlError> for AmlError[src]

impl StructuralEq for AmlError[src]

impl StructuralPartialEq for AmlError[src]

Auto Trait Implementations

impl Send for AmlError

impl Sync for AmlError

impl Unpin for AmlError

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.