summaryrefslogtreecommitdiff
path: root/src/lmparse.kl
Commit message (Collapse)AuthorAgeFilesLines
* moved source files into commit repositoryAdrian Thurston2020-03-141-0/+2139
|
* moved the original colm src dir to /colmAdrian Thurston2019-09-081-2139/+0
|
* migrated from GPLv2 to MIT licenseAdrian Thurston2016-12-131-17/+18
|
* revert "removed GPL license file and stripped GPL headers"Adrian Thurston2015-01-231-0/+17
| | | | | | | | | | This reverts commit f04d3ede7dbb6d3edd6a9865ebf88c5e6d82f18e. Conflicts: src/codegen.cc src/ctinput.cc src/exports.cc src/fsmcodegen.cc
* removed GPL license file and stripped GPL headersAdrian Thurston2014-10-221-17/+0
|
* renamed colm dir to srcAdrian Thurston2013-06-081-0/+2138
| | | | | | Renamed 'colm' dir to 'src'. To allow colm to work out of the installed location or the source tree, while the installed includes reference <colm/include.h>, a symlink to '..' is placed at src/include/colm.
* revert "moved 'colm' dir to 'src'"Adrian Thurston2012-08-011-2694/+0
| | | | | | | | | | | Colm includes a library component with headers installed to a private dir inside include: $prefix/include/colm. We need our headers to reference each other using this colm prefix. This needs to be true for compiling our source and also for compiling external programs. It is conventient to have all the source in a directory called colm and then to use -I <source-root> when building colm. We use $prefix/include when building external programs. This reverts commit 247904a84430b8c9151fa6afb68f01b60afb92c9.
* cleanup: 'accum' -> 'parser'Adrian Thurston2012-07-281-1/+1
|
* renamed Defintion to Production and added a static constructorAdrian Thurston2012-07-231-12/+5
|
* added static constructors for LangVarRef and cleaned up those callsAdrian Thurston2012-07-221-13/+13
|
* cleanup: removed Token from PdaRunAdrian Thurston2012-07-221-4/+4
| | | | | Token is a data structure for the parser, not the collected parse tree. PdaLiteral now collects location and data.
* cleanup in the parser and parse tree data structuresAdrian Thurston2012-07-221-19/+8
|
* some cleanup of the parse tree data structsAdrian Thurston2012-07-211-27/+30
|
* fixed order of replacement element productionsAdrian Thurston2012-07-211-1/+2
| | | | | | Had a code_expr ahead of a literal element in "stuff". Since code_expr allows a string we were getting the wrong tree. Note that accum has code_expr first because we want the strings. Going to need to sort this out!
* minor cleanup around parsingAdrian Thurston2012-07-161-14/+13
|
* cleanup in strings/accum/repl listsAdrian Thurston2012-07-161-32/+24
| | | | They are all now right recursive like accum.
* accum list needs to be right recursiveAdrian Thurston2012-07-161-1/+1
| | | | | Necessary to achieve correct ambiguity resolution. Right recursion gets us longer matches first.
* disabled the plain code_expr version of accumulateAdrian Thurston2012-07-161-5/+5
| | | | | Must use either "" or [] to wrap the items that go there. This is consistent with pattern matching and replacement.
* moved the send (also old << syntax) to LangTermAdrian Thurston2012-07-161-18/+20
| | | | | | The send belongs in the lang terms with the rest of the parsing, consing, matching, etc. Was in LangStmt only because there are some grammar issues to fix. The repl/accum/string definitions are a bit sloppy.
* some cleanup of parse tree type namesAdrian Thurston2012-07-151-5/+5
|
* a new parse statement syntaxAdrian Thurston2012-07-151-0/+39
| | | | | | | | Added a parse statement constructs the parser, sends some text in the style of the send statement, then returns the parser. More can be sent. When done finish is called. The goal here is to eliminate the parse statements that return the parsed tree because there is no way to get the parse error. The parser is immediately destroyed.
* some fixes for the static constructor functionsAdrian Thurston2012-07-091-1/+1
|
* static member constructorsAdrian Thurston2012-07-021-32/+32
|
* more static member constructorsAdrian Thurston2012-07-021-38/+38
|
* added a static member constructor for LangStmtAdrian Thurston2012-07-021-21/+21
|
* using static member functions for TypeRef constructionAdrian Thurston2012-07-021-20/+20
|
* more static member constructor functionsAdrian Thurston2012-07-021-12/+12
|
* more static member functions for consing parse tree elementsAdrian Thurston2012-07-021-19/+18
|
* using static constructors for creating ExpressionAdrian Thurston2012-07-011-6/+6
| | | | | The advantage of static constructors is that we can use common constructors for initializing fields.
* moved 'colm' dir to 'src'Adrian Thurston2012-07-011-0/+2677