This commit is contained in:
Jonathan Turner 2019-06-01 04:48:51 +12:00
commit 5ebe9c58aa
4 changed files with 102 additions and 113 deletions

View file

@ -339,7 +339,6 @@ impl SpannedToken<'source> {
#[derive(Debug, Clone, Eq, PartialEq)]
pub enum Token {
Variable,
Dot,
PathDot,
Member,
Num,
@ -561,9 +560,6 @@ mod tests {
impl TestToken<'source> {
fn to_token(&self, range: &std::ops::Range<usize>) -> SpannedToken<'source> {
match self.desc {
TokenDesc::Top(TopToken::Dot) => {
SpannedToken::new(Span::new(range), self.source, Token::Dot)
}
TokenDesc::Top(tok) => {
SpannedToken::new(Span::new(range), self.source, tok.to_token().unwrap())
}

View file

@ -105,7 +105,6 @@ extern {
type Error = ShellError;
enum SpannedToken<'input> {
"." => SpannedToken { token: Token::Dot, .. },
"|" => SpannedToken { token: Token::Pipe, .. },
"(" => SpannedToken { token: Token::OpenParen, .. },
")" => SpannedToken { token: Token::CloseParen, .. },

View file

@ -1,5 +1,5 @@
// auto-generated: "lalrpop 0.17.0"
// sha256: 7d24b7dfd8aaad128886f4926feedaf9a21057b08de7f4e587cd977890a65a
// sha256: c7eac268e354044ccb73aea4829c2dbd02ae11ce74a7dc33b74944ec862f9
#![allow(unused)]
use std::str::FromStr;
use crate::parser::ast::*;
@ -43,137 +43,137 @@ mod __parse__Pipeline {
}
const __ACTION: &'static [i8] = &[
// State 0
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 1
0, 21, 22, 0, 23, 24, 0, 0, 0, 0, 0, 0, 0, 5, 25, 0, 26, 0, 27, 0, 28, -19, 0,
0, 21, 22, 0, 23, 24, 0, 0, 0, 0, 0, 0, 5, 25, 0, 26, 0, 27, 0, 28, -19, 0,
// State 2
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0,
// State 3
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 4
-14, -14, -14, -14, -14, -14, 0, -14, -14, -14, -14, -14, 32, -14, -14, 0, -14, 0, -14, 0, -14, -14, -14,
-14, -14, -14, -14, -14, -14, -14, -14, -14, -14, -14, 32, -14, -14, 0, -14, 0, -14, 0, -14, -14, -14,
// State 5
-51, -51, -51, -51, -51, -51, 0, -51, -51, -51, -51, -51, -51, -51, -51, 0, -51, 0, -51, 0, -51, -51, -51,
-51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, -51, 0, -51, 0, -51, 0, -51, -51, -51,
// State 6
-44, -44, -44, -44, -44, -44, 0, -44, -44, -44, -44, -44, 0, -44, -44, 0, -44, 0, -44, 0, -44, -44, -44,
-44, -44, -44, -44, -44, -44, -44, -44, -44, -44, -44, 0, -44, -44, 0, -44, 0, -44, 0, -44, -44, -44,
// State 7
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -21, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -21, 0,
// State 8
-52, -52, -52, -52, -52, -52, 0, -52, -52, -52, -52, -52, -52, -52, -52, 0, -52, 0, -52, 0, -52, -52, -52,
-52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, -52, 0, -52, 0, -52, 0, -52, -52, -52,
// State 9
34, -24, -24, 0, -24, -24, 0, 35, 36, 37, 38, 39, 0, -24, -24, 0, -24, 0, -24, 0, -24, -24, 0,
34, -24, -24, 0, -24, -24, 35, 36, 37, 38, 39, 0, -24, -24, 0, -24, 0, -24, 0, -24, -24, 0,
// State 10
0, 21, 22, 0, 23, 24, 0, 0, 0, 0, 0, 0, 0, 5, 25, 0, 26, 0, 27, 0, 28, -20, 0,
0, 21, 22, 0, 23, 24, 0, 0, 0, 0, 0, 0, 5, 25, 0, 26, 0, 27, 0, 28, -20, 0,
// State 11
-45, -45, -45, -45, -45, -45, 0, -45, -45, -45, -45, -45, 0, -45, -45, 0, -45, 0, -45, 0, -45, -45, -45,
-45, -45, -45, -45, -45, -45, -45, -45, -45, -45, -45, 0, -45, -45, 0, -45, 0, -45, 0, -45, -45, -45,
// State 12
-30, -30, -30, -30, -30, -30, 0, -30, -30, -30, -30, -30, -30, -30, -30, 0, -30, 0, -30, 0, -30, -30, -30,
-30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, -30, 0, -30, 0, -30, 0, -30, -30, -30,
// State 13
-13, -13, -13, -13, -13, -13, 0, -13, -13, -13, -13, -13, -13, -13, -13, 0, -13, 0, -13, 0, -13, -13, -13,
-13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, -13, 0, -13, 0, -13, 0, -13, -13, -13,
// State 14
-12, -12, -12, -12, -12, -12, 0, -12, -12, -12, -12, -12, -12, -12, -12, 0, -12, 0, -12, 0, -12, -12, -12,
-12, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, -12, 0, -12, 0, -12, 0, -12, -12, -12,
// State 15
-22, -22, -22, -22, -22, -22, 0, -22, -22, -22, -22, -22, 0, -22, -22, 0, -22, 0, -22, 0, -22, -22, -22,
-22, -22, -22, -22, -22, -22, -22, -22, -22, -22, -22, 0, -22, -22, 0, -22, 0, -22, 0, -22, -22, -22,
// State 16
-23, -23, -23, -23, -23, -23, 0, -23, -23, -23, -23, -23, 0, -23, -23, 0, -23, 0, -23, 0, -23, -23, -23,
-23, -23, -23, -23, -23, -23, -23, -23, -23, -23, -23, 0, -23, -23, 0, -23, 0, -23, 0, -23, -23, -23,
// State 17
-29, -29, -29, -29, -29, -29, 0, -29, -29, -29, -29, -29, -29, -29, -29, 0, -29, 0, -29, 0, -29, -29, -29,
-29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, -29, 0, -29, 0, -29, 0, -29, -29, -29,
// State 18
-31, -31, -31, -31, -31, -31, 0, -31, -31, -31, -31, -31, -31, -31, -31, 0, -31, 0, -31, 0, -31, -31, -31,
-31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, -31, 0, -31, 0, -31, 0, -31, -31, -31,
// State 19
-43, -43, -43, -43, -43, -43, 0, -43, -43, -43, -43, -43, 42, -43, -43, 0, -43, 0, -43, 0, -43, -43, -43,
-43, -43, -43, -43, -43, -43, -43, -43, -43, -43, -43, 42, -43, -43, 0, -43, 0, -43, 0, -43, -43, -43,
// State 20
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0,
// State 21
0, 21, 22, 0, 23, 24, 0, 0, 0, 0, 0, 0, 0, 5, 25, 0, 26, 0, 27, 0, 28, 0, 0,
0, 21, 22, 0, 23, 24, 0, 0, 0, 0, 0, 0, 5, 25, 0, 26, 0, 27, 0, 28, 0, 0,
// State 22
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 23
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 24
-49, -49, -49, -49, -49, -49, 0, -49, -49, -49, -49, -49, -49, -49, -49, 0, -49, 0, -49, 0, -49, -49, -49,
-49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, -49, 0, -49, 0, -49, 0, -49, -49, -49,
// State 25
-28, -28, -28, -28, -28, -28, 0, -28, -28, -28, -28, -28, -28, -28, -28, 0, -28, 0, -28, 0, -28, -28, -28,
-28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, -28, 0, -28, 0, -28, 0, -28, -28, -28,
// State 26
-48, -48, -48, -48, -48, -48, 0, -48, -48, -48, -48, -48, -48, -48, -48, 0, -48, 0, -48, 0, -48, -48, -48,
-48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, -48, 0, -48, 0, -48, 0, -48, -48, -48,
// State 27
0, 21, 22, 0, 23, 24, 0, 0, 0, 0, 0, 0, 0, 5, 25, 0, 26, 0, 27, 0, 28, 0, 0,
0, 21, 22, 0, 23, 24, 0, 0, 0, 0, 0, 0, 5, 25, 0, 26, 0, 27, 0, 28, 0, 0,
// State 28
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0,
// State 29
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 30
-15, -15, -15, -15, -15, -15, 0, -15, -15, -15, -15, -15, 53, -15, -15, 0, -15, 0, -15, 0, -15, -15, -15,
-15, -15, -15, -15, -15, -15, -15, -15, -15, -15, -15, 53, -15, -15, 0, -15, 0, -15, 0, -15, -15, -15,
// State 31
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, 0, 0, 0, 0, 0, 0, 0,
// State 32
0, 21, 22, 0, 23, 24, 0, 0, 0, 0, 0, 0, 0, 5, 25, 0, 26, 0, 27, 0, 28, 0, 0,
0, 21, 22, 0, 23, 24, 0, 0, 0, 0, 0, 0, 5, 25, 0, 26, 0, 27, 0, 28, 0, 0,
// State 33
0, -35, -35, 0, -35, -35, 0, 0, 0, 0, 0, 0, 0, -35, -35, 0, -35, 0, -35, 0, -35, 0, 0,
0, -35, -35, 0, -35, -35, 0, 0, 0, 0, 0, 0, -35, -35, 0, -35, 0, -35, 0, -35, 0, 0,
// State 34
0, -36, -36, 0, -36, -36, 0, 0, 0, 0, 0, 0, 0, -36, -36, 0, -36, 0, -36, 0, -36, 0, 0,
0, -36, -36, 0, -36, -36, 0, 0, 0, 0, 0, 0, -36, -36, 0, -36, 0, -36, 0, -36, 0, 0,
// State 35
0, -38, -38, 0, -38, -38, 0, 0, 0, 0, 0, 0, 0, -38, -38, 0, -38, 0, -38, 0, -38, 0, 0,
0, -38, -38, 0, -38, -38, 0, 0, 0, 0, 0, 0, -38, -38, 0, -38, 0, -38, 0, -38, 0, 0,
// State 36
0, -34, -34, 0, -34, -34, 0, 0, 0, 0, 0, 0, 0, -34, -34, 0, -34, 0, -34, 0, -34, 0, 0,
0, -34, -34, 0, -34, -34, 0, 0, 0, 0, 0, 0, -34, -34, 0, -34, 0, -34, 0, -34, 0, 0,
// State 37
0, -37, -37, 0, -37, -37, 0, 0, 0, 0, 0, 0, 0, -37, -37, 0, -37, 0, -37, 0, -37, 0, 0,
0, -37, -37, 0, -37, -37, 0, 0, 0, 0, 0, 0, -37, -37, 0, -37, 0, -37, 0, -37, 0, 0,
// State 38
0, -39, -39, 0, -39, -39, 0, 0, 0, 0, 0, 0, 0, -39, -39, 0, -39, 0, -39, 0, -39, 0, 0,
0, -39, -39, 0, -39, -39, 0, 0, 0, 0, 0, 0, -39, -39, 0, -39, 0, -39, 0, -39, 0, 0,
// State 39
0, -25, -25, 0, -25, -25, 0, 0, 0, 0, 0, 0, 0, -25, -25, 0, -25, 0, -25, 0, -25, -25, 0,
0, -25, -25, 0, -25, -25, 0, 0, 0, 0, 0, 0, -25, -25, 0, -25, 0, -25, 0, -25, -25, 0,
// State 40
-42, -42, -42, -42, -42, -42, 0, -42, -42, -42, -42, -42, 56, -42, -42, 0, -42, 0, -42, 0, -42, -42, -42,
-42, -42, -42, -42, -42, -42, -42, -42, -42, -42, -42, 56, -42, -42, 0, -42, 0, -42, 0, -42, -42, -42,
// State 41
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 59, 0, 0, 27, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 59, 0, 0, 27, 0, 0, 0, 0,
// State 42
-50, -50, -50, -50, -50, -50, 0, -50, -50, -50, -50, -50, -50, -50, -50, 0, -50, 0, -50, 0, -50, -50, -50,
-50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, -50, 0, -50, 0, -50, 0, -50, -50, -50,
// State 43
0, 0, 0, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 44
34, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
34, 0, 0, 0, 0, 0, 35, 36, 37, 38, 39, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 45
-13, 0, 0, 61, 0, 0, 0, -13, -13, -13, -13, -13, -13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-13, 0, 0, 61, 0, 0, -13, -13, -13, -13, -13, -13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 46
-26, -26, -26, -26, -26, -26, 0, -26, -26, -26, -26, -26, 0, -26, -26, 0, -26, 0, -26, 0, -26, -26, -26,
-26, -26, -26, -26, -26, -26, -26, -26, -26, -26, -26, 0, -26, -26, 0, -26, 0, -26, 0, -26, -26, -26,
// State 47
-27, -27, -27, -27, -27, -27, 0, -27, -27, -27, -27, -27, 0, -27, -27, 0, -27, 0, -27, 0, -27, -27, -27,
-27, -27, -27, -27, -27, -27, -27, -27, -27, -27, -27, 0, -27, -27, 0, -27, 0, -27, 0, -27, -27, -27,
// State 48
-51, 0, 0, 0, 0, 0, 0, -51, -51, -51, -51, -51, -51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62,
-51, 0, 0, 0, 0, 0, -51, -51, -51, -51, -51, -51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62,
// State 49
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63,
// State 50
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
// State 51
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -10, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -10, 0,
// State 52
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 0, 0, 0, 0, 0, 0,
// State 53
-4, -4, -4, -4, -4, -4, 0, -4, -4, -4, -4, -4, -4, -4, -4, 0, -4, 0, -4, 0, -4, -4, -4,
-4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, 0, -4, 0, -4, 0, -4, -4, -4,
// State 54
0, 0, 0, -16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -16, -16,
0, 0, 0, -16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -16, -16,
// State 55
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 59, 0, 0, 27, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 59, 0, 0, 27, 0, 0, 0, 0,
// State 56
-7, -7, -7, -7, -7, -7, 0, -7, -7, -7, -7, -7, -7, -7, -7, 0, -7, 0, -7, 0, -7, -7, -7,
-7, -7, -7, -7, -7, -7, -7, -7, -7, -7, -7, -7, -7, -7, 0, -7, 0, -7, 0, -7, -7, -7,
// State 57
-33, -33, -33, -33, -33, -33, 0, -33, -33, -33, -33, -33, -33, -33, -33, 0, -33, 0, -33, 0, -33, -33, -33,
-33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, -33, 0, -33, 0, -33, 0, -33, -33, -33,
// State 58
-32, -32, -32, -32, -32, -32, 0, -32, -32, -32, -32, -32, -32, -32, -32, 0, -32, 0, -32, 0, -32, -32, -32,
-32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, -32, 0, -32, 0, -32, 0, -32, -32, -32,
// State 59
-41, -41, -41, -41, -41, -41, 0, -41, -41, -41, -41, -41, -41, -41, -41, 0, -41, 0, -41, 0, -41, -41, -41,
-41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, -41, 0, -41, 0, -41, 0, -41, -41, -41,
// State 60
-40, -40, -40, -40, -40, -40, 0, -40, -40, -40, -40, -40, -40, -40, -40, 0, -40, 0, -40, 0, -40, -40, -40,
-40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, -40, 0, -40, 0, -40, 0, -40, -40, -40,
// State 61
-17, -17, -17, -17, -17, -17, 0, -17, -17, -17, -17, -17, -17, -17, -17, 0, -17, 0, -17, 0, -17, -17, -17,
-17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, -17, 0, -17, 0, -17, 0, -17, -17, -17,
// State 62
-18, -18, -18, -18, -18, -18, 0, -18, -18, -18, -18, -18, -18, -18, -18, 0, -18, 0, -18, 0, -18, -18, -18,
-18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, -18, 0, -18, 0, -18, 0, -18, -18, -18,
// State 63
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11, 0,
// State 64
-5, -5, -5, -5, -5, -5, 0, -5, -5, -5, -5, -5, -5, -5, -5, 0, -5, 0, -5, 0, -5, -5, -5,
-5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, -5, 0, -5, 0, -5, 0, -5, -5, -5,
// State 65
-8, -8, -8, -8, -8, -8, 0, -8, -8, -8, -8, -8, -8, -8, -8, 0, -8, 0, -8, 0, -8, -8, -8,
-8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, -8, 0, -8, 0, -8, 0, -8, -8, -8,
];
const __EOF_ACTION: &'static [i8] = &[
// State 0
@ -451,7 +451,6 @@ mod __parse__Pipeline {
r###"")""###,
r###""-""###,
r###""--""###,
r###"".""###,
r###""<""###,
r###""<=""###,
r###""==""###,
@ -469,7 +468,7 @@ mod __parse__Pipeline {
r###""|""###,
r###""}""###,
];
__ACTION[(__state * 23)..].iter().zip(__TERMINAL).filter_map(|(&state, terminal)| {
__ACTION[(__state * 22)..].iter().zip(__TERMINAL).filter_map(|(&state, terminal)| {
if state == 0 {
None
} else {
@ -513,12 +512,12 @@ mod __parse__Pipeline {
#[inline]
fn action(&self, state: i8, integer: usize) -> i8 {
__ACTION[(state as usize) * 23 + integer]
__ACTION[(state as usize) * 22 + integer]
}
#[inline]
fn error_action(&self, state: i8) -> i8 {
__ACTION[(state as usize) * 23 + (23 - 1)]
__ACTION[(state as usize) * 22 + (22 - 1)]
}
#[inline]
@ -586,23 +585,22 @@ mod __parse__Pipeline {
SpannedToken { token: Token::CloseParen, .. } if true => Some(3),
SpannedToken { token: Token::Dash, .. } if true => Some(4),
SpannedToken { token: Token::DashDash, .. } if true => Some(5),
SpannedToken { token: Token::Dot, .. } if true => Some(6),
SpannedToken { token: Token::OpLt, .. } if true => Some(7),
SpannedToken { token: Token::OpLte, .. } if true => Some(8),
SpannedToken { token: Token::OpEq, .. } if true => Some(9),
SpannedToken { token: Token::OpGt, .. } if true => Some(10),
SpannedToken { token: Token::OpGte, .. } if true => Some(11),
SpannedToken { token: Token::PathDot, .. } if true => Some(12),
SpannedToken { token: Token::Bare, .. } if true => Some(13),
SpannedToken { token: Token::DQString, .. } if true => Some(14),
SpannedToken { token: Token::Member, .. } if true => Some(15),
SpannedToken { token: Token::Num, .. } if true => Some(16),
SpannedToken { token: Token::Size, .. } if true => Some(17),
SpannedToken { token: Token::SQString, .. } if true => Some(18),
SpannedToken { token: Token::Variable, .. } if true => Some(19),
SpannedToken { token: Token::OpenBrace, .. } if true => Some(20),
SpannedToken { token: Token::Pipe, .. } if true => Some(21),
SpannedToken { token: Token::CloseBrace, .. } if true => Some(22),
SpannedToken { token: Token::OpLt, .. } if true => Some(6),
SpannedToken { token: Token::OpLte, .. } if true => Some(7),
SpannedToken { token: Token::OpEq, .. } if true => Some(8),
SpannedToken { token: Token::OpGt, .. } if true => Some(9),
SpannedToken { token: Token::OpGte, .. } if true => Some(10),
SpannedToken { token: Token::PathDot, .. } if true => Some(11),
SpannedToken { token: Token::Bare, .. } if true => Some(12),
SpannedToken { token: Token::DQString, .. } if true => Some(13),
SpannedToken { token: Token::Member, .. } if true => Some(14),
SpannedToken { token: Token::Num, .. } if true => Some(15),
SpannedToken { token: Token::Size, .. } if true => Some(16),
SpannedToken { token: Token::SQString, .. } if true => Some(17),
SpannedToken { token: Token::Variable, .. } if true => Some(18),
SpannedToken { token: Token::OpenBrace, .. } if true => Some(19),
SpannedToken { token: Token::Pipe, .. } if true => Some(20),
SpannedToken { token: Token::CloseBrace, .. } if true => Some(21),
_ => None,
}
}
@ -640,70 +638,66 @@ mod __parse__Pipeline {
_ => unreachable!(),
},
6 => match __token {
__tok @ SpannedToken { token: Token::Dot, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
7 => match __token {
__tok @ SpannedToken { token: Token::OpLt, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
8 => match __token {
7 => match __token {
__tok @ SpannedToken { token: Token::OpLte, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
9 => match __token {
8 => match __token {
__tok @ SpannedToken { token: Token::OpEq, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
10 => match __token {
9 => match __token {
__tok @ SpannedToken { token: Token::OpGt, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
11 => match __token {
10 => match __token {
__tok @ SpannedToken { token: Token::OpGte, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
12 => match __token {
11 => match __token {
__tok @ SpannedToken { token: Token::PathDot, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
13 => match __token {
12 => match __token {
__tok @ SpannedToken { token: Token::Bare, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
14 => match __token {
13 => match __token {
__tok @ SpannedToken { token: Token::DQString, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
15 => match __token {
14 => match __token {
__tok @ SpannedToken { token: Token::Member, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
16 => match __token {
15 => match __token {
__tok @ SpannedToken { token: Token::Num, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
17 => match __token {
16 => match __token {
__tok @ SpannedToken { token: Token::Size, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
18 => match __token {
17 => match __token {
__tok @ SpannedToken { token: Token::SQString, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
19 => match __token {
18 => match __token {
__tok @ SpannedToken { token: Token::Variable, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
20 => match __token {
19 => match __token {
__tok @ SpannedToken { token: Token::OpenBrace, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
21 => match __token {
20 => match __token {
__tok @ SpannedToken { token: Token::Pipe, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},
22 => match __token {
21 => match __token {
__tok @ SpannedToken { token: Token::CloseBrace, .. } => __Symbol::Variant0((__tok)),
_ => unreachable!(),
},

View file

@ -116,7 +116,7 @@ fn token_style(
(State::Var, Variable) => (Color::Yellow.bold(), State::None),
(State::Bare, Dot) => (Color::Green.normal(), State::Bare),
(State::Bare, PathDot) => (Color::Green.normal(), State::Bare),
(State::Bare, Member) => (Color::Green.normal(), State::Bare),
(_, Dash) | (_, DashDash) => (Color::Black.bold(), State::Flag),