Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | added with_ignore(tree) iterator | Adrian Thurston | 2020-12-23 | 1 | -2/+2 |
| | | | | | | | | | | | | This is identical to the basic tree iterator, except it visits ignore tokens. This makes it possible to rewrite comments, albeit, primitively. Constructors for tokens don't work right. Though we can set the data field. The following code can be used to turn comments into newlines: for I1: comment in with_ignore(Flux) { I1.data = "\n" } | ||||
* | renamed DefList and LelDefList to the more accurate ProdList, LelProdList | Adrian Thurston | 2020-04-12 | 1 | -5/+5 |
| | |||||
* | first cut of a redefine statement | Adrian Thurston | 2020-04-12 | 1 | -0/+3 |
| | | | | | | | | Redefine happens during declaration. The existing langEl is removed from the map and a newly-declared lel replaces it. If the new list of productions references [...] the productions from the previous lel are moved into the new one, in its place. A copy would be preferrable, as move may require some fixup, but move gives an initial functional implementation. refs #112 | ||||
* | moved source files into commit repository | Adrian Thurston | 2020-03-14 | 1 | -0/+3607 |
| | |||||
* | moved the original colm src dir to /colm | Adrian Thurston | 2019-09-08 | 1 | -3605/+0 |
| | |||||
* | merging aapl src dirs: added CmpStr and CmpString to colm/aapl | Adrian Thurston | 2019-09-08 | 1 | -6/+6 |
| | | | | | | | | CmpStr is defined in colm/*.h so we need to also move it aside when we add it to aapl. With this commit there are no more diffs between the aapl src dirs, with the exception of a three files added to the aapl-repos package. Will use this as the definitive version. | ||||
* | pushing the trim decision to run-time | Adrian Thurston | 2019-05-24 | 1 | -3/+10 |
| | | | | | | | | | The trim and no-trim operators are both now in the expression. In places where we want the print mechanism to decide if it trims or not, we lift the trim operator out of the expression and into the send expression, then pass it to the print and send instructions. This way the stream or input (parser) can control the trim (auto_trim feature) with the expression overriding the default. | ||||
* | allow referencing a tree in reduction actions | Adrian Thurston | 2018-12-17 | 1 | -0/+1 |
| | | | | syntax is $*N | ||||
* | make the rhs of switch vars available in case clauses | Adrian Thurston | 2018-05-20 | 1 | -2/+6 |
| | |||||
* | removed stopId from parse frag instruction | Adrian Thurston | 2018-05-15 | 1 | -1/+0 |
| | |||||
* | unified parse frag and finish | Adrian Thurston | 2018-05-15 | 1 | -0/+9 |
| | |||||
* | allow sending to lists of streams | Adrian Thurston | 2018-05-12 | 1 | -0/+3 |
| | |||||
* | don't disable parse revert based on what's being manpiulated | Adrian Thurston | 2018-05-11 | 1 | -1/+1 |
| | | | | Other tests always cause this to come out non-disabled anyways. | ||||
* | moved all the parse finish codegen to one function | Adrian Thurston | 2018-05-09 | 1 | -1/+5 |
| | |||||
* | removed print statements, using only the send statement | Adrian Thurston | 2018-05-07 | 1 | -6/+0 |
| | |||||
* | allow a prod-name case clause to also have a pattern | Adrian Thurston | 2018-03-11 | 1 | -1/+2 |
| | |||||
* | allow switching on production numbers | Adrian Thurston | 2018-03-09 | 1 | -9/+46 |
| | | | | | Added a form to case statements that accepts a production name instead of a pattern. | ||||
* | updated Copyright years | Adrian Thurston | 2018-03-04 | 1 | -1/+1 |
| | |||||
* | organizing the reduce code generator | Adrian Thurston | 2017-07-29 | 1 | -1/+6 |
| | |||||
* | added a read_reduce statement to call postfix reducer | Adrian Thurston | 2017-07-27 | 1 | -1/+5 |
| | | | | Triggers the generation of the reducer. Accepts a stream. | ||||
* | started on a tree print in postfix notation | Adrian Thurston | 2017-07-20 | 1 | -0/+1 |
| | | | | | Postfix notation can be used as a streaming tree format as both an output and input. | ||||
* | minor fixes: a missing cast, no comma at enum end, no redefined typedefs | Peter Reijnders | 2016-12-19 | 1 | -4/+4 |
| | |||||
* | migrated from GPLv2 to MIT license | Adrian Thurston | 2016-12-13 | 1 | -17/+18 |
| | |||||
* | an automated include convention improvement from Peter Reijnders | Adrian Thurston | 2016-12-13 | 1 | -11/+14 |
| | |||||
* | removed clones of cons-item-list resolve | Adrian Thurston | 2016-10-29 | 1 | -0/+1 |
| | |||||
* | auto-trim in print, send and construct, disable with @ | Adrian Thurston | 2016-10-01 | 1 | -2/+5 |
| | | | | | | | | | | | | | | Now automatically trimming when building trees and printing. This is consistent with the $ operator. Rationale is to standardize on the most commonly desired behaviour and provide options for the less-needed. Also much less likely to result in surprising output. There are many cases where test inputs won't have any surrounding ignores, making it easy to forget a trim is required. Then the occasional tree with surrounding ignores will give an undesired result. Better to standardize on trim, making the default behaviour more consistent. The trim can be turned off with the @ operator in front of an expression. | ||||
* | implemented a const-string define option -Ename=val | Adrian Thurston | 2016-07-28 | 1 | -0/+8 |
| | |||||
* | allow omission of location in reductions | Adrian Thurston | 2015-11-30 | 1 | -1/+6 |
| | | | | | | | There is code in here for omission of location and data in reductions. Unfortunately we cannot enable the omission of data unless we make changes to the backtracking. In the current implementation we push the token data with an mcopy from the data in the token. | ||||
* | split reducers into their own class | Adrian Thurston | 2015-11-05 | 1 | -3/+9 |
| | | | | Previously selected with a runtime int. Using reduction name as the class name. | ||||
* | allow access to rhs elements by number | Adrian Thurston | 2015-11-01 | 1 | -0/+3 |
| | |||||
* | allow multiple reducers | Adrian Thurston | 2015-10-21 | 1 | -2/+9 |
| | | | | selection is currently manual using a numberical identifier | ||||
* | reduction actions: add loc reference, elim duplicate labels | Adrian Thurston | 2015-10-08 | 1 | -0/+3 |
| | |||||
* | collect and emit reduction action items | Adrian Thurston | 2015-10-06 | 1 | -7/+23 |
| | |||||
* | generate the union and size parse tree according to it | Adrian Thurston | 2015-10-05 | 1 | -6/+7 |
| | |||||
* | load reduction nonterms | Adrian Thurston | 2015-10-05 | 1 | -0/+18 |
| | |||||
* | added syntax dedicated to reductions | Adrian Thurston | 2015-10-05 | 1 | -1/+3 |
| | | | | | This avoids interferrence with existing parsing code. Calling the commit/reduce code only if the reduce construct is used. | ||||
* | load reduction actions and generate a commit containing them | Adrian Thurston | 2015-10-04 | 1 | -0/+39 |
| | |||||
* | working on a commit that can execute reduction actions | Adrian Thurston | 2015-10-04 | 1 | -1/+3 |
| | | | | | | First track if the result is used. If not, we can remove parse trees at commit points. This is also the time to execute reduction actions so we can load as we parse. Not currently enabled (by way of omitting setting of not-used bit). | ||||
* | allow globals to be declared in namespaces | Adrian Thurston | 2015-08-09 | 1 | -3/+5 |
| | |||||
* | now scoping functions inside the namespaces they are declared in | Adrian Thurston | 2015-08-09 | 1 | -58/+76 |
| | |||||
* | moved MethodMap into NameScope, converted some ptrs to objs | Adrian Thurston | 2015-08-08 | 1 | -12/+11 |
| | |||||
* | more cleanup in the list and map type resolve/declare | Adrian Thurston | 2015-06-14 | 1 | -0/+6 |
| | |||||
* | cleanup in the list and map types | Adrian Thurston | 2015-06-14 | 1 | -17/+6 |
| | |||||
* | cleanup and simplification, generic elements and various | Adrian Thurston | 2015-06-13 | 1 | -0/+3 |
| | |||||
* | some cleanup around the unified list and map generics | Adrian Thurston | 2015-06-08 | 1 | -4/+4 |
| | |||||
* | now creating list and map el structures in the declare pass | Adrian Thurston | 2015-06-07 | 1 | -9/+30 |
| | |||||
* | some nameing cleanup around list and list el | Adrian Thurston | 2015-06-06 | 1 | -15/+8 |
| | |||||
* | replacing list and map with vlist and vmap | Adrian Thurston | 2015-06-06 | 1 | -5/+11 |
| | |||||
* | more of the vlist implementation .. moved all test cases to vlist | Adrian Thurston | 2015-06-05 | 1 | -2/+4 |
| | |||||
* | more application of C naming conventions | Adrian Thurston | 2015-05-15 | 1 | -15/+11 |
| |