Skip to main content

Packet

Struct Packet 

Source
pub struct Packet<'a> { /* private fields */ }
Expand description

Bounded parsed XMP packet, borrowing its source XML.

Implementations§

Source§

impl<'a> Packet<'a>

Source

pub fn parse(xml: &'a str) -> Result<Self, Error>

Parse at most 16 MiB / 65,536 XML nodes / 64 nested elements. Unknown XML is inspectable, but selected property access is strict.

Source

pub fn property( &self, namespace: &str, name: &str, ) -> Result<Option<Vec<String>>, Error>

Read a property of the document’s empty-subject RDF Description. Accepts a scalar attribute/element or an rdf:Seq array of plain values. Duplicate declarations, alternate subjects, qualifiers and mixed content refuse instead of selecting a possibly different rendering interpretation.

Source

pub fn resource_sequence( &self, namespace: &str, name: &str, item_namespace: &str, item_name: &str, ) -> Result<Vec<Vec<Property>>, Error>

Read a sequence of resource structures (e.g. GContainer Directory). Each item contains namespace-qualified scalar properties. Unknown scalar fields are returned too; the caller chooses its schema, never its prefix.

Source

pub fn fields(&self) -> Result<Vec<Field>, Error>

Full XML structural snapshot: elements, attributes, text, comments and processing instructions. Namespace declarations are represented by resolved names, not prefix spelling. No unknown application property is discarded. This is structural comparison, not equivalence of arbitrary RDF graphs.

Trait Implementations§

Source§

impl<'a> Debug for Packet<'a>

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for Packet<'a>

§

impl<'a> RefUnwindSafe for Packet<'a>

§

impl<'a> Send for Packet<'a>

§

impl<'a> Sync for Packet<'a>

§

impl<'a> Unpin for Packet<'a>

§

impl<'a> UnsafeUnpin for Packet<'a>

§

impl<'a> UnwindSafe for Packet<'a>

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> 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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.