Skip to main content

Appearance

Enum Appearance 

Source
pub enum Appearance {
    Untouched,
    Generated(GeneratedAp),
    Suppressed,
}
Expand description

What an overlay says about one annotation.

Three states, not two, and the third is why this is an enum rather than an Option. “Nothing was generated” and “this annotation draws nothing” are different instructions: the first falls through to whatever /AP the file carries, the second suppresses it. A field whose appearance has been cleared — focus left it and it went back to drawing nothing — needs the second, and expressing it as the absence of an entry would make it indistinguishable from the first.

use pdfrum_doc::{AnnotOverlay, ap::Appearance};

let mut overlay = AnnotOverlay::with_capacity(2);
assert_eq!(overlay.appearance(0), &Appearance::Untouched);

// Suppressed is not the same as untouched: it says "draw nothing",
// even for an annotation the file gave an `/AP`.
overlay.set_appearance(0, Appearance::Suppressed);
assert!(overlay.get(0).is_none());

Variants§

§

Untouched

Nothing to say. The file’s own /AP is used, if it has one.

§

Generated(GeneratedAp)

Draw this instead of the file’s /AP.

§

Suppressed

Draw nothing at all, even if the file carries an /AP.

Nothing sets this yet. It exists so a cleared appearance has a spelling that is not “absent”, which is what keeps the merge below able to express one later without changing shape.

Trait Implementations§

Source§

impl Clone for Appearance

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Appearance

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Appearance

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl PartialEq for Appearance

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for Appearance

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.