Struct elementtree::QName
[−]
[src]
pub struct QName<'a> { /* fields omitted */ }
A QName
represents a qualified name.
A qualified name is a tag or attribute name that has a namespace and a
local name. If the namespace is empty no namespace is assumed. It
can be constructed from a qualified name string with the from
method.
Notes on Memory Management
Qualified names that are user constructed for comparison purposes
usually have a static lifetime because they are created from static
strings. Creating qualified names from other strings might make
memory management harder which is why share()
exists which moves
the QName
internal strings to shared storage in which the lifetime
changes to 'static
.
Common usage examples:
let href = QName::from_name("href"); let a = QName::from("{http://www.w3.org/1999/xhtml}a");
Methods
impl<'a> QName<'a>
[src]
fn from(s: &'a str) -> QName<'a>
Creates a qualified name from a given string.
Two formats are supported {namespace}tag
or just tag
.
let a = QName::from("{http://www.w3.org/1999/xhtml}a");
fn from_name(name: &'a str) -> QName<'a>
Creates a qualified name from a given string without namespace.
This is slightly faster than using from()
.
fn from_ns_name(ns: Option<&'a str>, name: &'a str) -> QName<'a>
Creates a qualified name from a namespace and name.
fn name(&self) -> &str
Returns the name portion of the qualified name. This is the local tag or attribute name.
fn ns(&self) -> Option<&str>
Returns the optional namespace of this element. This is the URL of the namespace and not the prefix. The information about the latter is not retained.
Creates a shared QName
with static lifetime from an already
existing QName
. The internal strings are interned and might
be shared with other instances.
Trait Implementations
impl<'a> AsQName<'a> for &'a QName<'a>
[src]
impl<'a> Clone for QName<'a>
[src]
fn clone(&self) -> QName<'a>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl<'a> PartialEq for QName<'a>
[src]
fn eq(&self, other: &QName<'a>) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &Rhs) -> bool
1.0.0
This method tests for !=
.
impl<'a> Debug for QName<'a>
[src]
impl<'a> Display for QName<'a>
[src]
impl<'a> Eq for QName<'a>
[src]
impl<'a> Hash for QName<'a>
[src]
fn hash<H: Hasher>(&self, state: &mut H)
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0
Feeds a slice of this type into the state provided.