aboutsummaryrefslogtreecommitdiffstats
path: root/parser/src/pair_ext_parse.rs
diff options
context:
space:
mode:
authorPhilipp A2023-12-28 15:29:19 +0100
committerGitHub2023-12-28 15:29:19 +0100
commit2a76f2dde6533c09f8e93b44d1f214a105d9c5c2 (patch)
tree84d87ba7e14e86dbba43f2f46f9723c823631ecd /parser/src/pair_ext_parse.rs
parentc0441bff302e724bb8f98420459a2c672e2286c6 (diff)
downloadrust-rst-2a76f2dde6533c09f8e93b44d1f214a105d9c5c2.tar.bz2
Format (#38)
Diffstat (limited to 'parser/src/pair_ext_parse.rs')
-rw-r--r--parser/src/pair_ext_parse.rs44
1 files changed, 32 insertions, 12 deletions
diff --git a/parser/src/pair_ext_parse.rs b/parser/src/pair_ext_parse.rs
index fb5ba6b..cbb51b0 100644
--- a/parser/src/pair_ext_parse.rs
+++ b/parser/src/pair_ext_parse.rs
@@ -1,21 +1,41 @@
use std::str::FromStr;
-use pest::Span;
+use pest::error::{Error, ErrorVariant};
use pest::iterators::Pair;
-use pest::error::{Error,ErrorVariant};
-
+use pest::Span;
-pub trait PairExt<R> where R: pest::RuleType {
- fn parse<T, E>(&self) -> Result<T, Box<Error<R>>> where T: FromStr<Err = E>, E: ToString;
+pub trait PairExt<R>
+where
+ R: pest::RuleType,
+{
+ fn parse<T, E>(&self) -> Result<T, Box<Error<R>>>
+ where
+ T: FromStr<Err = E>,
+ E: ToString;
}
-impl<'l, R> PairExt<R> for Pair<'l, R> where R: pest::RuleType {
- fn parse<T, E>(&self) -> Result<T, Box<Error<R>>> where T: FromStr<Err = E>, E: ToString {
- self.as_str().parse().map_err(|e| to_parse_error(self.as_span(), &e))
- }
+impl<'l, R> PairExt<R> for Pair<'l, R>
+where
+ R: pest::RuleType,
+{
+ fn parse<T, E>(&self) -> Result<T, Box<Error<R>>>
+ where
+ T: FromStr<Err = E>,
+ E: ToString,
+ {
+ self.as_str()
+ .parse()
+ .map_err(|e| to_parse_error(self.as_span(), &e))
+ }
}
-pub(crate) fn to_parse_error<E, R>(span: Span, e: &E) -> Box<Error<R>> where E: ToString, R: pest::RuleType {
- let var: ErrorVariant<R> = ErrorVariant::CustomError { message: e.to_string() };
- Box::new(Error::new_from_span(var, span))
+pub(crate) fn to_parse_error<E, R>(span: Span, e: &E) -> Box<Error<R>>
+where
+ E: ToString,
+ R: pest::RuleType,
+{
+ let var: ErrorVariant<R> = ErrorVariant::CustomError {
+ message: e.to_string(),
+ };
+ Box::new(Error::new_from_span(var, span))
}