#[non_exhaustive]
pub enum Error {
Show 28 variants UnrecognizedFileFormat, InvalidPageSize(u32), PageReferenceOutOfRange(u32), StreamNotFound(u32), StreamNameNotFound, InvalidStreamLength(&'static str), IoError(Error), UnexpectedEof, UnimplementedFeature(&'static str), GlobalSymbolsNotFound, SymbolTooShort, UnimplementedSymbolKind(u16), InvalidTypeInformationHeader(&'static str), TypeTooShort, TypeNotFound(u32), TypeNotIndexed(u32u32), UnimplementedTypeKind(u16), NotACrossModuleRef(u32), CrossModuleRefNotFound(u32), UnexpectedNumericPrefix(u16), AddressMapNotFound, ScrollError(Error), UnimplementedDebugSubsection(u32), UnimplementedFileChecksumKind(u8), InvalidFileChecksumOffset(u32), LinesNotFound, InvalidCompressedAnnotation, UnknownBinaryAnnotation(u32),
}
Expand description

An error that occurred while reading or parsing the PDB.

Variants (Non-exhaustive)

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.

UnrecognizedFileFormat

The input data was not recognized as a MSF (PDB) file.

InvalidPageSize(u32)

The MSF header specifies an invalid page size.

PageReferenceOutOfRange(u32)

MSF referred to page number out of range.

This likely indicates file corruption.

StreamNotFound(u32)

The requested stream is not stored in this file.

StreamNameNotFound

A stream requested by name was not found.

InvalidStreamLength(&'static str)

Invalid length or alignment of a stream.

IoError(Error)

An IO error occurred while reading from the data source.

UnexpectedEof

Unexpectedly reached end of input.

UnimplementedFeature(&'static str)

This data might be understandable, but the code needed to understand it hasn’t been written.

GlobalSymbolsNotFound

The global shared symbol table is missing.

SymbolTooShort

A symbol record’s length value was impossibly small.

UnimplementedSymbolKind(u16)

Support for symbols of this kind is not implemented.

InvalidTypeInformationHeader(&'static str)

The type information header was invalid.

TypeTooShort

A type record’s length value was impossibly small.

TypeNotFound(u32)

Type or Id not found.

TypeNotIndexed(u32u32)

Type or Id not indexed – the requested type (.0) is larger than the maximum index covered by the ItemFinder (.1).

UnimplementedTypeKind(u16)

Support for types of this kind is not implemented.

NotACrossModuleRef(u32)

Type index is not a cross module reference.

CrossModuleRefNotFound(u32)

Cross module reference not found in imports.

UnexpectedNumericPrefix(u16)

Variable-length numeric parsing encountered an unexpected prefix.

AddressMapNotFound

Required mapping for virtual addresses (OMAP) was not found.

ScrollError(Error)

A parse error from scroll.

UnimplementedDebugSubsection(u32)

This debug subsection kind is unknown or unimplemented.

UnimplementedFileChecksumKind(u8)

This source file checksum kind is unknown or unimplemented.

InvalidFileChecksumOffset(u32)

There is no source file checksum at the given offset.

LinesNotFound

The lines table is missing.

InvalidCompressedAnnotation

A binary annotation was compressed incorrectly.

UnknownBinaryAnnotation(u32)

An unknown binary annotation was encountered.

Trait Implementations

Formats the value using the given formatter. Read more

Formats the value using the given formatter. Read more

The lower-level source of this error, if any. Read more

🔬 This is a nightly-only experimental API. (backtrace)

Returns a stack backtrace, if available, of where this error occurred. Read more

👎 Deprecated since 1.42.0:

use the Display impl or to_string()

👎 Deprecated since 1.33.0:

replaced by Error::source, which can support downcasting

Converts to this type from the input type.

Converts to this type from the input type.

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

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Converts the given value to a String. Read more

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.