aboutsummaryrefslogtreecommitdiffstats
path: root/src/xml/parsers.rs
diff options
context:
space:
mode:
authorLibravatar cel 🌸 <cel@bunny.garden>2024-11-01 13:37:33 +0000
committerLibravatar cel 🌸 <cel@bunny.garden>2024-11-01 13:37:33 +0000
commitc6c3c1b403ecc70b759b1e1d371f414c63211e82 (patch)
tree174e6e748f8a0f12feab7a27050a80ce05c2ba85 /src/xml/parsers.rs
parentceb1bca7a4f1ccf9bfc6a050adc4387e992c9403 (diff)
downloadpeanuts-c6c3c1b403ecc70b759b1e1d371f414c63211e82.tar.gz
peanuts-c6c3c1b403ecc70b759b1e1d371f414c63211e82.tar.bz2
peanuts-c6c3c1b403ecc70b759b1e1d371f414c63211e82.zip
change contents of Names and Nmtokens to Vecs
Diffstat (limited to '')
-rw-r--r--src/xml/parsers.rs12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/xml/parsers.rs b/src/xml/parsers.rs
index b8b8018..6326593 100644
--- a/src/xml/parsers.rs
+++ b/src/xml/parsers.rs
@@ -189,8 +189,8 @@ impl<'s> Parser<'s, Names<'s>> for Names<'s> {
// TODO: fix
fn parse(input: &'s str) -> IResult<&str, Names<'s>> {
map(
- recognize(pair(Name::parse, many0(pair(char('\u{20}'), Name::parse)))),
- |names| Names(names),
+ pair(Name::parse, many0(preceded(char('\u{20}'), Name::parse))),
+ |(head, tail)| Names(vec![vec![head], tail].concat()),
)(input)
}
}
@@ -208,11 +208,11 @@ impl<'s> Parser<'s, Nmtoken<'s>> for Nmtoken<'s> {
impl<'s> Parser<'s, Nmtokens<'s>> for Nmtokens<'s> {
fn parse(input: &'s str) -> IResult<&str, Nmtokens<'s>> {
map(
- recognize(pair(
+ pair(
Nmtoken::parse,
- many0(pair(char('\u{20}'), Nmtoken::parse)),
- )),
- |nmtokens| Nmtokens(nmtokens),
+ many0(preceded(char('\u{20}'), Nmtoken::parse)),
+ ),
+ |(head, tail)| Nmtokens(vec![vec![head], tail].concat()),
)(input)
}
}