pub trait NamedNodeMapMethods<D: DomTypes> {
// Required methods
fn Length(&self) -> u32;
fn Item(&self, index: u32) -> Option<Root<Dom<Attr>>>;
fn GetNamedItem(&self, qualifiedName: DOMString) -> Option<Root<Dom<Attr>>>;
fn GetNamedItemNS(
&self,
namespace: Option<DOMString>,
localName: DOMString,
) -> Option<Root<Dom<Attr>>>;
fn SetNamedItem(
&self,
attr: &Attr,
) -> Result<Option<Root<Dom<Attr>>>, Error>;
fn SetNamedItemNS(
&self,
attr: &Attr,
) -> Result<Option<Root<Dom<Attr>>>, Error>;
fn RemoveNamedItem(
&self,
qualifiedName: DOMString,
) -> Result<Root<Dom<Attr>>, Error>;
fn RemoveNamedItemNS(
&self,
namespace: Option<DOMString>,
localName: DOMString,
) -> Result<Root<Dom<Attr>>, Error>;
fn IndexedGetter(&self, index: u32) -> Option<Root<Dom<Attr>>>;
fn SupportedPropertyNames(&self) -> Vec<DOMString>;
fn NamedGetter(&self, qualifiedName: DOMString) -> Option<Root<Dom<Attr>>>;
}