Fixed loose error
This commit is contained in:
@@ -497,13 +497,13 @@ as_px = {
|
||||
range_end_inc_px = { "..=" }
|
||||
range_end_exc_px = { ".." }
|
||||
|
||||
increment_px = { "++" }
|
||||
decrement_px = { "++" }
|
||||
inc_px = { "++" }
|
||||
dec_px = { "++" }
|
||||
|
||||
postfix = {
|
||||
field_px
|
||||
| increment_px
|
||||
| decrement_px
|
||||
| inc_px
|
||||
| dec_px
|
||||
| call_px
|
||||
| macro_call_px
|
||||
| struct_px
|
||||
|
||||
+11
-1
@@ -41,7 +41,7 @@ macro_rules! ast_ensure {
|
||||
Err(AstError {
|
||||
span: $pair.as_span(),
|
||||
error_code: crate::error::ErrorCode::AstGenBug,
|
||||
error_message: format!("Possible bug: expected {:?}, got {}", $rule, $pair),
|
||||
error_message: format!("Possible bug: expected {:?}, got {:?}", $rule, $pair.as_rule()),
|
||||
recovered: None,
|
||||
})
|
||||
}
|
||||
@@ -50,6 +50,16 @@ macro_rules! ast_ensure {
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! ast_expr {
|
||||
(use $r:expr, $($v:expr),* $(,)?) => {{
|
||||
let mut analyzer = $crate::error::AstErrorAnalyzer(None);
|
||||
|
||||
$(
|
||||
analyzer.get($v).get()?;
|
||||
)*
|
||||
|
||||
analyzer.build($r)
|
||||
}};
|
||||
|
||||
($($item:ident)::+ { $($k:ident: $v:expr),* $(,)? }) => {{
|
||||
let mut analyzer = $crate::error::AstErrorAnalyzer(None);
|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ impl<'a> TryFrom<pest::iterators::Pair<'a, Rule>> for Expression {
|
||||
postfixes: postfixes,
|
||||
})
|
||||
} else {
|
||||
exp
|
||||
ast_expr!(use exp?, prefixes, postfixes)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user