#[non_exhaustive]pub enum Subject {
Document,
Catalog,
Page(u32),
Object(ObjRef),
Resource {
page: u32,
name: String,
},
}Expand description
What in the file broke a requirement.
Deliberately not a string. A converter that wants to repair a violation
needs the ObjRef to reach the object; a caller that wants to tell a user
which page to look at needs the index. Formatting either into a sentence
throws that away and cannot be recovered.
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.
Document
The document as a whole — the trailer, the header, or a property with no single object behind it.
Catalog
The document catalog.
Page(u32)
A page, by zero-based index.
Object(ObjRef)
A specific indirect object.
Resource
A named resource on a page: the page index and the resource’s name.
Trait Implementations§
impl Eq for Subject
impl StructuralPartialEq for Subject
Auto Trait Implementations§
impl Freeze for Subject
impl RefUnwindSafe for Subject
impl Send for Subject
impl Sync for Subject
impl Unpin for Subject
impl UnsafeUnpin for Subject
impl UnwindSafe for Subject
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more