blob: e5dc727fd9a7a8855f8b1e759ad8d15678d031b7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
use mon::{Parser, tag};
use crate::{Parseable, atom::Atom, repo::profile::packages::Package};
impl<'a> Parseable<'a, &'a str> for Package {
type Parser = impl Parser<&'a str, Output = Self>;
fn parser() -> Self::Parser {
Atom::parser()
.preceded_by(tag("*"))
.map(Package::Add)
.or(Atom::parser().preceded_by(tag("-*")).map(Package::Remove))
}
}
|