| Commit message (Expand) | Author | Age | Files | Lines |
| * | Prohibit using a pattern in an alternative•••When a syntax error occurs, the parser must provide a user with the names of expected tokens.
However, if a pattern appears directly in an alternative, Vartan cannot assign an appropriate name to the pattern.
Therefore, this commit prohibits alternatives from containing patterns.
| Ryo Nihei | 2022-06-12 | 1 | -6/+8 |
| * | Remove the kind field from a node corresponding to an anonymous terminal symbol | Ryo Nihei | 2022-06-11 | 3 | -10/+202 |
| * | Rename spec package to spec/grammar package | Ryo Nihei | 2022-05-27 | 8 | -8/+8 |
| * | Allows a directory to be specified as the --output option for the vartan-comp... | Ryo Nihei | 2022-05-22 | 5 | -5/+5 |
| * | Stop supporting SLR(1) and always use LALR(1) | Ryo Nihei | 2022-05-22 | 8 | -76/+53 |
| * | Prohibit using escape sequences in string literals | Ryo Nihei | 2022-05-15 | 1 | -0/+24 |
| * | Follow golangci-lint | Ryo Nihei | 2022-05-10 | 1 | -3/+1 |
| * | Make the identifier format strict | Ryo Nihei | 2022-05-10 | 1 | -7/+7 |
| * | Add ordered symbol notation | Ryo Nihei | 2022-05-10 | 1 | -7/+7 |
| * | Add #assign directive•••An #assign directive changes only precedence.
| Ryo Nihei | 2022-05-10 | 1 | -13/+152 |
| * | Change syntax for top-level directives•••%name changes to:
#name example;
%left and %right change to:
#prec (
#left a b
#right c d
);
| Ryo Nihei | 2022-05-10 | 5 | -52/+70 |
| * | Make #prec directive change only precedence and not associativity | Ryo Nihei | 2022-05-10 | 1 | -2/+47 |
| * | Add --json option to vartan-parse command | Ryo Nihei | 2022-05-10 | 2 | -27/+79 |
| * | vartan-show command prints only adopted actions when conflicts occur | Ryo Nihei | 2022-04-21 | 1 | -5/+0 |
| * | Add tests for driver | Ryo Nihei | 2022-04-16 | 1 | -3/+155 |
| * | Move compiler tests from driver package to grammar package | Ryo Nihei | 2022-04-14 | 1 | -545/+2 |
| * | Allow arbitrary user-defined types for nodes in a syntax tree | Ryo Nihei | 2022-04-03 | 3 | -196/+219 |
| * | Print a parse tree even if syntax error occur•••A parser can construct a parse tree even if syntax error occur.
When there is a parse tree, print it.
| Ryo Nihei | 2022-04-01 | 1 | -2/+8 |
| * | Allow an alternative to have multiple directives | Ryo Nihei | 2022-03-30 | 1 | -2/+116 |
| * | Move directives given to lexical productions•••Move all directives given to lexical productions from alternative directives to production directives.
This change aims to ensure consistency with respect to the syntax of definitions of terminal symbols and non-terminal symbols.
| Ryo Nihei | 2022-03-29 | 4 | -71/+136 |
| * | Change syntax of production directives•••The position of directives given to productions has moved from before a left-hand side value to after a left-hand side value.
This change aims to simplify the syntax.
However, there is no change in positions of directives given to alternatives.
| Ryo Nihei | 2022-03-29 | 1 | -12/+16 |
| * | Use IDs and labels as parameters of an #ast directive instead of symbol posit... | Ryo Nihei | 2022-03-29 | 1 | -4/+102 |
| * | Add label notation | Ryo Nihei | 2022-03-29 | 1 | -0/+60 |
| * | Simplify the syntax of #ast directive•••This change allows using the simple syntax of the directive like `#ast $1 $3...` instead of `#ast #(foo $1 $3...)`.
| Ryo Nihei | 2022-03-28 | 1 | -19/+4 |
| * | Add vartan-go command | Ryo Nihei | 2022-03-27 | 8 | -47/+613 |
| * | Use a lexer via interface | Ryo Nihei | 2022-03-27 | 9 | -91/+183 |
| * | Use grammar via an interface | Ryo Nihei | 2022-03-23 | 7 | -48/+172 |
| * | Add name directive to specify a grammar name | Ryo Nihei | 2021-10-28 | 5 | -0/+133 |
| * | Use maleeni v0.5.1 | Ryo Nihei | 2021-10-27 | 4 | -17/+18 |
| * | Pass a token that caused a syntax error to the semantic action APIs | Ryo Nihei | 2021-09-07 | 3 | -15/+16 |
| * | Call the 'MissError' when input doesn't meet an error production | Ryo Nihei | 2021-09-07 | 2 | -1/+7 |
| * | Add the semantic action API 'TrapAndShiftError' instead of 'TrapError' and 'S... | Ryo Nihei | 2021-09-07 | 3 | -52/+35 |
| * | Change semantic action APIs•••The driver reports whether it recovered from an error to the semantic action APIs via the argument `recovered`.
| Ryo Nihei | 2021-09-07 | 3 | -18/+42 |
| * | Add tests for LAC | Ryo Nihei | 2021-09-03 | 1 | -0/+113 |
| * | Make semantic actions user-configurable | Ryo Nihei | 2021-09-03 | 6 | -242/+521 |
| * | Support LAC (lookahead correction) | Ryo Nihei | 2021-09-02 | 1 | -29/+115 |
| * | Remove the expected terminals field from the parsing table•••The driver searches the expected terminals corresponding to each state if necessary.
| Ryo Nihei | 2021-08-31 | 1 | -10/+15 |
| * | Refactor | Ryo Nihei | 2021-08-30 | 1 | -165/+215 |
| * | Add #prec directive to set precedence and associativity of productions | Ryo Nihei | 2021-08-30 | 1 | -0/+92 |
| * | Add an #alias directive to define a user-friendly name of a terminal | Ryo Nihei | 2021-08-28 | 1 | -25/+17 |
| * | Add error symbol and #recover directive to recover from an error state | Ryo Nihei | 2021-08-26 | 3 | -27/+336 |
| * | Add a column number to a token | Ryo Nihei | 2021-08-22 | 1 | -2/+10 |
| * | Support %left and %right to specify precedences and associativities | Ryo Nihei | 2021-08-22 | 2 | -0/+297 |
| * | Resolve conflicts by default rules•••When a shift/reduce conflict occurred, we prioritize the shift action, and when a reduce/reduce conflict occurred, we prioritize the production defined earlier in the grammar file.
| Ryo Nihei | 2021-08-21 | 2 | -12/+121 |
| * | Fix indents of a tree | Ryo Nihei | 2021-08-19 | 1 | -1/+1 |
| * | Fix panic on a syntax error | Ryo Nihei | 2021-08-15 | 1 | -3/+5 |
| * | Support LALR(1) class | Ryo Nihei | 2021-08-15 | 1 | -40/+47 |
| * | Add --only-parse option to the parse command•••When this option is enabled, the parser performs only parse and doesn't semantic actions.
| Ryo Nihei | 2021-08-05 | 1 | -6/+11 |
| * | Avoid the growth of slices when constructing trees | Ryo Nihei | 2021-08-05 | 1 | -5/+25 |
| * | Generate an AST and a CST only when they are necessary | Ryo Nihei | 2021-08-04 | 2 | -59/+99 |