Age | Commit message (Collapse) | Author | Files | Lines |
|
Tag function should not require parentheses.
|
|
Previously, an unparenthesized call followed by a hash would always
result in an error that the hash was a resource body without title.
The change now treats the resource body without title as an opportunity
to transform the expression into a hash (and subsequently into a
call with a hash as an argument).
At the same time, the set of functions this is available for has been
reduced to realize, require, contain, include, and the logging functions
notice, info, warning, error, and the fail function.
|
|
This makes the future parser use the new faster lexer.
As a consequence features provided by the old lexer has now moved
to the parser (keeping track of namestack).
Locator information is still not optimized wrt the parser as the
tokens/locator information are adapter to the "old" way
(room for performance improvements).
Tests are updated as the new lexer is both more restrictive, and in
some case more relaxed (where regular expressions may occur).
|
|
This removes the two alternative lambda syntax forms from the grammar
and changes (and removes) tests that were testing (or using) the
removed forms.
The two removed forms are:
* {|$x| }
* |$x| => { }
|
|
The API and Impl modules were an interesting idea that has just been
leading to confusion about where things live. Moving forward the public
vs. private distinction for API purposes should be handled with @api
annotations in documentation and clear responsibilities of classes and
modules.
|