Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add NEWS file.HEADv1.4master | Daniel Silverstone | 2017-08-02 | 1 | -0/+18 |
| | | | | | | | This should be updated whenever a new feature is added to Lace. It is not meant to be a full changelog, so only put headline items in this file please. The first time a change happens after a new version, please remember to add the new title. | ||||
* | Support reporting deep error messages more cleanlydsilvers/deep-errors | Daniel Silverstone | 2017-07-08 | 5 | -1/+31 |
| | |||||
* | Test that include statements error on bad condition namesdsilvers/definechecking | Daniel Silverstone | 2017-05-13 | 1 | -0/+9 |
| | |||||
* | Ensure defines used in include are checked for existing | Daniel Silverstone | 2017-05-13 | 1 | -0/+11 |
| | |||||
* | Ensure definitions are faked for include tests | Daniel Silverstone | 2017-05-13 | 1 | -3/+3 |
| | |||||
* | Test checking defines in anyof/allof | Daniel Silverstone | 2017-05-13 | 3 | -0/+34 |
| | |||||
* | Support checking defines in anyof/allof | Daniel Silverstone | 2017-05-13 | 1 | -1/+13 |
| | |||||
* | Remove obsolete tests | Daniel Silverstone | 2017-05-13 | 3 | -34/+0 |
| | |||||
* | Ensure defined values | Daniel Silverstone | 2017-05-13 | 1 | -3/+3 |
| | |||||
* | Test for bad defines in allow | Daniel Silverstone | 2017-05-13 | 1 | -0/+10 |
| | | | | | Ensure that when a bad define name is used in an allow that we report it, and hilight it properly. | ||||
* | Check in allow/deny that names are defined | Daniel Silverstone | 2017-05-13 | 1 | -0/+10 |
| | |||||
* | Augment compcontext for tests. | Daniel Silverstone | 2017-05-13 | 2 | -14/+20 |
| | | | | | This adds the 'assumed defined' names to the compilation contexts for the simple tests for allow and deny. | ||||
* | Save names of defines for checking later | Daniel Silverstone | 2017-05-13 | 1 | -0/+4 |
| | |||||
* | fix bug where '[' would be lostv1.3.1 | Daniel Silverstone | 2017-02-12 | 6 | -11/+26 |
| | | | | | | | | | If the accumulator was non-empty during the lexing of a lexeme which contained '[' such as ![foo] the ! being in the accumulator would prevent the [foo] being processed as a quoted sublexer. Since [] quoting is only for sublexing, instead we add the accumulator to the lexeme so that it can be used later in the compiler to ensure that ![foo] correctly turns into !__autodefN etc. | ||||
* | Add CoCv1.3 | Daniel Silverstone | 2016-05-30 | 1 | -0/+20 |
| | |||||
* | Merge branch 'subword-errors' of ↵ | Daniel Silverstone | 2015-11-30 | 8 | -90/+199 |
|\ | | | | | | | git://git.gitano.org.uk/personal/richardmaw/lace | ||||
| * | lace.error.render: Report all lines that caused error | Richard Maw | 2015-11-27 | 3 | -19/+58 |
| | | | | | | | | | | This makes use of the line information added to the error traces, to report exactly which definitions also caused the problem. | ||||
| * | lace.builtin.define: Record the definition in error words | Richard Maw | 2015-11-27 | 2 | -0/+34 |
| | | | | | | | | | | | | | | | | This wraps the defined function to record the line and word offset that the function was defined at. Because we abuse the define command to define subexpressions, we also have to undo that. | ||||
| * | lace.error.render: Build wordset before filling in lines | Richard Maw | 2015-11-27 | 1 | -9/+11 |
| | | | | | | | | | | This is entirely cosmetic to make subsequent diffs, that make it return lines for defines as well, more readable. | ||||
| * | lace.builtin: Augment returned errors with line numbers | Richard Maw | 2015-11-27 | 1 | -4/+15 |
| | | |||||
| * | lace.builtin: Pass the rule into builtin functions | Richard Maw | 2015-11-27 | 3 | -42/+50 |
| | | | | | | | | | | | | | | | | | | This added the rule parameter after the exec_context parameter, by extending the arguments list, rather than changing the engine to pass the rule back into its callback, so that user-defined rules aren't broken by getting an unexpected parameter. Unfortunately this required renumbering all the unit tests' indexes. | ||||
| * | lace.builtin: Augment default rule with source and line number | Richard Maw | 2015-11-27 | 1 | -2/+7 |
| | | |||||
| * | lace.error: Move augmented source location into words | Richard Maw | 2015-11-27 | 2 | -6/+6 |
| | | | | | | | | | | The intention is to make `words` record which source line the words were in, so it's no longer implicitly the line being interpreted. | ||||
| * | lace.builtin.include: Record subwords for include errors | Richard Maw | 2015-11-27 | 1 | -0/+3 |
| | | | | | | | | | | | | This adds the file path as the error word in include statements, so if an error happens in a file that has been included, the include statement is included in the chain. | ||||
| * | lace.error: Split out subword collection logic | Richard Maw | 2015-11-27 | 2 | -6/+11 |
| | | |||||
| * | lace.builtin.include: Highlight the right word when inclusion conditional errors | Richard Maw | 2015-11-27 | 1 | -1/+2 |
| | | |||||
| * | lace.compiler.transfer_args: call errors `msg` | Richard Maw | 2015-11-27 | 1 | -4/+4 |
| | | | | | | | | | | This avoids shadowing the error module, so its methods can be used. | ||||
| * | lace.builtin.define: Clarify unknown control type error | Richard Maw | 2015-11-27 | 3 | -3/+4 |
| | | | | | | | | | | | | | | | | | | | | | | | | There was much confusion when trying to work out why define foo [bar] did not work. The fact that [bar] expands to `define $RANDOM bar` and the [bar] token is replaced by $RANDOM, which isn't a control type and is not defined until runtime, so can't work. Pragmatically this only prevents you using define to create an alias for another command, which is of debatable utility. | ||||
| * | lace.builtin: move any/allof function out | Richard Maw | 2015-11-26 | 1 | -9/+11 |
| | | | | | | | | | | | | | | | | This is mostly for symmetry with the rest of the code, which has a separate _do_foo() most of the time. There may be minor performance improvements from not making closures as well, but that wasn't the purpose. | ||||
* | | Merge branch 'subword-errors' of ↵v1.2 | Daniel Silverstone | 2015-11-24 | 4 | -19/+73 |
|\ \ | |/ | | | | | git://git.gitano.org.uk/personal/richardmaw/lace | ||||
| * | lace.error.render: Highlight the subword the error came from | Richard Maw | 2015-11-24 | 2 | -14/+37 |
| | | |||||
| * | lace: Collect subwords when collecting errors | Richard Maw | 2015-11-24 | 2 | -4/+23 |
| | | |||||
| * | lace.lex: Don't include trailing ] in subword | Richard Maw | 2015-11-24 | 1 | -0/+4 |
| | | | | | | | | | | | | | | | | | | The trailing ] terminates the word, but is not part of it, so it should not be included in the word's span. It's simpler to fall through the termination with a modified current position than consume the word again. | ||||
| * | lace.builtin: Offset anyof/allof error messages | Richard Maw | 2015-11-24 | 1 | -1/+9 |
|/ | |||||
* | Convert subdefines from {} to [] | Richard Maw | 2015-11-17 | 9 | -12/+12 |
| | | | | | | | Gitano uses ${user} to let you define rules about the current user. Rather than significantly complicate the parser, it's easier to change the token. | ||||
* | Allow sub sub defines | Daniel Silverstone | 2015-11-10 | 6 | -21/+58 |
| | |||||
* | Support sub-definition using braces | Daniel Silverstone | 2015-11-09 | 6 | -2/+67 |
| | |||||
* | Add support for lexing {}d strings | Daniel Silverstone | 2015-11-09 | 2 | -6/+39 |
| | |||||
* | Support the concent that compile_one_line() might return many rules for that ↵ | Daniel Silverstone | 2015-11-09 | 1 | -7/+14 |
| | | | | one line | ||||
* | Support lexing in a way which copes with terminators | Daniel Silverstone | 2015-11-09 | 1 | -5/+9 |
| | |||||
* | Add some unpack holding so that Lua 5.3 worksv1.1 | Daniel Silverstone | 2015-11-05 | 3 | -0/+6 |
| | |||||
* | Fix small bug which fails to propagate defaults | Daniel Silverstone | 2015-11-05 | 4 | -3/+11 |
| | |||||
* | Make luacov optional in the test suite | Daniel Silverstone | 2015-07-04 | 6 | -6/+6 |
| | |||||
* | Change config.ld to talk about README | Daniel Silverstone | 2015-07-03 | 1 | -1/+1 |
| | |||||
* | Indent code sample in README | Daniel Silverstone | 2015-07-03 | 1 | -9/+9 |
| | |||||
* | Cache full lexes of rulesets | Daniel Silverstone | 2014-03-22 | 1 | -0/+8 |
| | |||||
* | Attempt caching of lexed lines to speed things up | Daniel Silverstone | 2014-03-22 | 1 | -1/+10 |
| | |||||
* | More documentation | Daniel Silverstone | 2013-12-09 | 3 | -2/+63 |
| | |||||
* | Move ldoc generation into top level | Daniel Silverstone | 2013-11-28 | 13 | -3/+8 |
| | |||||
* | Lots of ldoc | Daniel Silverstone | 2013-11-26 | 7 | -4/+221 |
| |