aboutsummaryrefslogtreecommitdiff
path: root/driver/parser_test.go (follow)
Commit message (Expand)AuthorAgeFilesLines
* Add vartan-go commandRyo Nihei2022-03-271-3/+4
* Use a lexer via interfaceRyo Nihei2022-03-271-1/+6
* Use grammar via an interfaceRyo Nihei2022-03-231-1/+1
* Add name directive to specify a grammar nameRyo Nihei2021-10-281-0/+105
* Use maleeni v0.5.1Ryo Nihei2021-10-271-12/+12
* Make semantic actions user-configurableRyo Nihei2021-09-031-5/+6
* Add #prec directive to set precedence and associativity of productionsRyo Nihei2021-08-301-0/+92
* Add error symbol and #recover directive to recover from an error stateRyo Nihei2021-08-261-0/+92
* Support %left and %right to specify precedences and associativitiesRyo Nihei2021-08-221-0/+52
* 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 Nihei2021-08-211-12/+12
* Support LALR(1) classRyo Nihei2021-08-151-40/+47
* Generate an AST and a CST only when they are necessaryRyo Nihei2021-08-041-1/+1
* Detect duplicate names between terminals and non-terminalsRyo Nihei2021-07-311-0/+26
* Prevent terminals used in productions from being skipped•••A terminal symbol used in productions cannot have the skip directive. Ryo Nihei2021-07-311-0/+11
* Detect unused-symbol error•••When there are productions and terminals that are cannot be reached from the start symbol, the compiler reports an error. Ryo Nihei2021-07-301-0/+43
* Detect duplicate production errorsRyo Nihei2021-07-281-0/+42
* Add literal pattern syntax and change tree structure syntax•••- Literal patterns don't interpret the special characters of regular expressions. In other words, 'abc|def' matches only `abc|def`, not `abc` or `def`. - Change tree structure syntax from '(...) to #(...). Ryo Nihei2021-07-221-5/+5
* Write a description file•••The description file describes a LR(0) item set and conflicts (if any). Ryo Nihei2021-07-221-2/+4
* Detect multiple semantic errors in a single parseRyo Nihei2021-07-181-1/+2
* Add testing for the driver•••The driver can reduce productions that have the empty alternative and can generate a CST (and AST) node. Ryo Nihei2021-07-151-0/+44
* Allow directives to take multiple parametersRyo Nihei2021-07-021-1/+3
* Prettify treesRyo Nihei2021-07-021-2/+3
* Simplify syntax of modifiers and semantic actions•••Modifiers and semantic actions are represented by directives following the '#' symbol. Ryo Nihei2021-06-301-15/+15
* Add testing for the driverRyo Nihei2021-06-291-1/+114
* Add ast actionRyo Nihei2021-06-281-22/+87
* Add syntax of fragmentRyo Nihei2021-06-201-0/+11
* Add skip actionRyo Nihei2021-06-201-0/+12
* Add syntax of modifiers and actions•••Currently, a mode modifier and push/pop actions are available. The modifier and the actions make sense in only lexical specifications. Ryo Nihei2021-06-201-23/+65
* Add driverRyo Nihei2021-06-191-0/+50