dav: Refactor proppatch, remove InvalidProperty trait

This commit is contained in:
Lennart
2024-12-25 17:34:38 +01:00
parent d74e0fa702
commit 8fdaba2b57
13 changed files with 90 additions and 143 deletions

View File

@@ -28,8 +28,8 @@ pub enum XmlDeError {
Other(String),
#[error("Invalid variant: {0}")]
InvalidVariant(String),
#[error("Invalid field name: {0}")]
InvalidFieldName(String),
#[error("Invalid field name in {0}: {1}")]
InvalidFieldName(&'static str, String),
#[error(transparent)]
InvalidValue(#[from] crate::value::ParseValueError),
}

View File

@@ -36,6 +36,13 @@ impl XmlDeserialize for () {
#[derive(Debug, Clone, PartialEq)]
pub struct Unparsed(BytesStart<'static>);
impl Unparsed {
pub fn tag_name(&self) -> String {
// TODO: respect namespace?
String::from_utf8_lossy(self.0.local_name().as_ref()).to_string()
}
}
impl XmlDeserialize for Unparsed {
fn deserialize<R: BufRead>(
reader: &mut quick_xml::NsReader<R>,