Enum aml::AmlError[][src]

pub enum AmlError {
    UnexpectedEndOfStream,
    UnexpectedByte(u8),
    MalformedStream,
    InvalidNameSeg,
    InvalidPkgLength,
    InvalidFieldFlags,
    IncompatibleValueConversion,
    UnterminatedStringConstant,
    InvalidStringConstant,
    InvalidRegionSpace(u8),
    MalformedPackage,
    MalformedBuffer,
    WrongParser,
    EmptyNamesAreInvalid,
    InvalidNormalizedName(AmlName),
    RootHasNoParent,
    LevelDoesNotExist(AmlName),
    ValueDoesNotExist(AmlName),
    NameCollision(AmlName),
    TriedToRemoveRootNamespace,
    NotExecutingControlMethod,
    InvalidArgAccess(u8),
    InvalidLocalAccess(u8),
    PrtInvalidAddress,
    PrtInvalidPin,
    PrtInvalidSource,
    PrtInvalidGsi,
    PrtNoEntry,
    ReservedResourceType,
    ResourceDescriptorTooShort,
    ResourceDescriptorTooLong,
    InvalidStatusObject,
    InvalidShiftLeft,
    InvalidShiftRight,
    FieldRegionIsNotOpRegion,
    FieldInvalidAddress,
    FieldInvalidAccessSize,
    TypeCannotBeCompared(AmlType),
}

Variants

UnexpectedEndOfStream
UnexpectedByte(u8)
MalformedStream

Produced when the stream evaluates to something other than nothing or an error.

InvalidNameSeg
InvalidPkgLength
InvalidFieldFlags
IncompatibleValueConversion
UnterminatedStringConstant
InvalidStringConstant
InvalidRegionSpace(u8)
MalformedPackage

Produced when a DefPackage contains a different number of elements to the package’s length.

MalformedBuffer

Produced when a DefBuffer contains more bytes that its size.

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
LevelDoesNotExist(AmlName)

Produced when a sub-level or value is added to a level that has not yet been added to the namespace. The AmlName is the name of the entire sub-level/value.

ValueDoesNotExist(AmlName)
NameCollision(AmlName)

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

TriedToRemoveRootNamespace
NotExecutingControlMethod

Produced when AML tries to do something only possible in a control method (e.g. read from an argument) when there’s no control method executing.

InvalidArgAccess(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.

InvalidLocalAccess(u8)

Produced when a method accesses a local that it has not stored into.

PrtInvalidAddress
PrtInvalidPin
PrtInvalidSource
PrtInvalidGsi
PrtNoEntry

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

ReservedResourceType
ResourceDescriptorTooShort
ResourceDescriptorTooLong
InvalidStatusObject
InvalidShiftLeft
InvalidShiftRight
FieldRegionIsNotOpRegion
FieldInvalidAddress
FieldInvalidAccessSize
TypeCannotBeCompared(AmlType)

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.