aboutsummaryrefslogtreecommitdiff
path: root/spec/lexer_test.go (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Rename spec package to spec/grammar packageRyo Nihei2022-05-271-236/+0
|
* Prohibit using escape sequences in string literalsRyo Nihei2022-05-151-9/+4
|
* Make the identifier format strictRyo Nihei2022-05-101-2/+32
|
* Add ordered symbol notationRyo Nihei2022-05-101-1/+2
|
* Change syntax for top-level directivesRyo Nihei2022-05-101-2/+3
| | | | | | | | | | | | | %name changes to: #name example; %left and %right change to: #prec ( #left a b #right c d );
* Use IDs and labels as parameters of an #ast directive instead of symbol ↵Ryo Nihei2022-03-291-12/+2
| | | | positions
* Add label notationRyo Nihei2022-03-291-1/+2
|
* Simplify the syntax of #ast directiveRyo Nihei2022-03-281-3/+1
| | | | This change allows using the simple syntax of the directive like `#ast $1 $3...` instead of `#ast #(foo $1 $3...)`.
* Support the escape sequecens \' and \\ in a string literalRyo Nihei2021-08-281-6/+24
|
* Add an #alias directive to define a user-friendly name of a terminalRyo Nihei2021-08-281-1/+5
|
* Add a column number to an error messageRyo Nihei2021-08-221-5/+5
|
* Support %left and %right to specify precedences and associativitiesRyo Nihei2021-08-221-1/+2
|
* Add a token position and detailed info to a lexical error messageRyo Nihei2021-07-281-1/+5
|
* Add literal pattern syntax and change tree structure syntaxRyo Nihei2021-07-221-2/+13
| | | | | | - 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 #(...).
* Add a line number to token error messagesRyo Nihei2021-07-171-2/+14
|
* Add a line number to error messagesRyo Nihei2021-07-161-29/+45
|
* Prohibit defining identifiers beginning with an underscoreRyo Nihei2021-07-021-0/+5
| | | | Identifiers beginning with an underscore are used as auto-generated identifiers.
* Simplify syntax of modifiers and semantic actionsRyo Nihei2021-06-301-9/+20
| | | | Modifiers and semantic actions are represented by directives following the '#' symbol.
* Add ast actionRyo Nihei2021-06-281-2/+11
|
* Add syntax of fragmentRyo Nihei2021-06-201-0/+8
|
* Add syntax of modifiers and actionsRyo Nihei2021-06-201-1/+3
| | | | | Currently, a mode modifier and push/pop actions are available. The modifier and the actions make sense in only lexical specifications.
* Add syntax of commentsRyo Nihei2021-06-201-0/+15
|
* Add production syntaxRyo Nihei2021-06-151-1/+2
|
* Add spec parserRyo Nihei2021-06-151-0/+103
Currently, the parser only supports definitions of lexical specification.