Revision tags: v3.0.2, v3.0.1, v3.0.0 |
|
#
27281e91 |
| 23-Nov-2016 |
Nikita Popov |
Fix attribute assignment for Error nodes
|
#
c5cdd5ad |
| 21-Nov-2016 |
Nikita Popov |
Support recovery from free-standing $
|
Revision tags: v3.0.0beta2 |
|
#
f99a96e0 |
| 09-Oct-2016 |
Nikita Popov |
Introduce ErrorHandler Add ErrorHandler interface, as well as ErrorHandler\Throwing and ErrorHandler\Collecting. The error handler is passed to Parser::parse(). This supersedes the t
Introduce ErrorHandler Add ErrorHandler interface, as well as ErrorHandler\Throwing and ErrorHandler\Collecting. The error handler is passed to Parser::parse(). This supersedes the throwOnError option. NameResolver now accepts an ErrorHandler in the ctor.
show more ...
|
#
caa5c0cc |
| 08-Oct-2016 |
Nikita Popov |
Graceful handling for "special" errors Nearly all special errors are now handled gracefully, i.e. the parser will be able to continue after encountering them. In some cases the assoc
Graceful handling for "special" errors Nearly all special errors are now handled gracefully, i.e. the parser will be able to continue after encountering them. In some cases the associated error range has been improved using the new end attribute stack. To achieve this the error handling code has been moved out of the node constructors and into special methods in the parser.
show more ...
|
#
f6eb341b |
| 08-Oct-2016 |
Nikita Popov |
Fix GroupUse prefix attribute assignment
|
#
c79ea6d1 |
| 30-Sep-2016 |
Nikita Popov |
Support recovery from lexer errors Lexer::startLexing() no longer throws, instead errors can be fetched using Lexer::getErrors(). Lexer errors now also contain full line and pos
Support recovery from lexer errors Lexer::startLexing() no longer throws, instead errors can be fetched using Lexer::getErrors(). Lexer errors now also contain full line and position information.
show more ...
|
#
c5e0c3d7 |
| 30-Sep-2016 |
Nikita Popov |
Catch lexer errors in throwOnError=0 mode
|
Revision tags: v3.0.0beta1, v2.1.1 |
|
#
977cbab8 |
| 25-Jul-2016 |
Nikita Popov |
Decrement errorState when recovering from -> error It's likely that an error after -> will trigger another one due to missing semicolon without shifting a single token. We prevent an
Decrement errorState when recovering from -> error It's likely that an error after -> will trigger another one due to missing semicolon without shifting a single token. We prevent an immediate failure in this case by manually setting errorState to 2, which will suppress the duplicate error message, but allow error recovery.
show more ...
|
Revision tags: v3.0.0alpha1 |
|
#
81f7da3b |
| 06-Jul-2016 |
Nikita Popov |
Fix computation of expected tokens in parse errors
|
#
5044fce1 |
| 05-Jul-2016 |
Nikita Popov |
PHP 7.1: Add void+iterable support In PHP 7 mode, these will now be represented as strings 'void' and 'iterable'.
|
Revision tags: v2.1.0 |
|
#
4c7ad7e1 |
| 16-Apr-2016 |
Nikita Popov |
Allow nop statements before namespace declaration
|
#
14de7189 |
| 05-Apr-2016 |
Nikita Popov |
Fix nop statement comment assignment Keep around the start attributes on the lookahead token around in a separate parser property.
|
Revision tags: v2.0.1 |
|
#
eb734410 |
| 15-Jan-2016 |
Nikita Popov |
Support hashbang before namespace declaration Fixes issue #243.
|
Revision tags: v2.0.0, v2.0.0beta1, v1.4.1, v2.0.0alpha1, v1.4.0 |
|
#
f2b7a315 |
| 20-Jun-2015 |
Nikita Popov |
Rename ParserInterface to Parser And drop the alias of Parser to Parser\Php5.
|
#
0da72fad |
| 13-Jun-2015 |
Nikita Popov |
Support scalar type declarations
|
#
ca3b44bf |
| 13-Jun-2015 |
Nikita Popov |
Fork separate PHP 7 parser Also add ParserInterface
|
Revision tags: v1.3.0 |
|
#
9caa51b3 |
| 01-May-2015 |
Nikita Popov |
Add some more tests
|
#
3b7d8e8b |
| 30-Apr-2015 |
Nikita Popov |
Enable basic error recovery Adding only a single recovery rule for now. The API is now: * throwOnError parser option must be disabled. * List of Errors is available throug
Enable basic error recovery Adding only a single recovery rule for now. The API is now: * throwOnError parser option must be disabled. * List of Errors is available through $parser->getErrors(). This method is available either way. * If no recovery is possible $parser->parse() will return null. (Obviously only if throwOnError is disabled).
show more ...
|
#
66896dbd |
| 26-Apr-2015 |
Nikita Popov |
Poison attribute initializations in parser Those should error if they end up being used.
|
#
a6d2cd69 |
| 23-Apr-2015 |
Nikita Popov |
Clarify attribute assignment code * Don't assign to attribute stack on reduce - why was that there in the first place? * Assign attributes to the position in the stack where the firs
Clarify attribute assignment code * Don't assign to attribute stack on reduce - why was that there in the first place? * Assign attributes to the position in the stack where the first token of the production is, instead of one position earlier. * Add a comment to clarify why we also assign attributes on read, instead of just on shift.
show more ...
|
#
6996db1e |
| 22-Apr-2015 |
Nikita Popov |
Build node attributes inside semantic action methods Minor performance improvement for parsing, also allows to access attributes with higher granulity in the parser, though this is not
Build node attributes inside semantic action methods Minor performance improvement for parsing, also allows to access attributes with higher granulity in the parser, though this is not currently done. * #n can now be used to access the stack position of a token. $n is the same as $this->semStack[#n]. (Post-translate $n will actually be the stack position.) * $attributeStack is now $this->startAttributeStack and $endAttributes is now $this->endAttributes. * Attributes for a node are now computed inside the individual reduction methods, instead of being passed as a parameter. Accessible through the attributes() macro.
show more ...
|
Revision tags: v1.2.2, v1.2.1, v1.2.0 |
|
#
65f1adbe |
| 02-Feb-2015 |
Nikita Popov |
Merge primary error recovery code The grammar does not yet actually implement error recovery.
|
#
611fa5c7 |
| 18-Apr-2015 |
Nikita Popov |
Test parser position information (syntax errors)
|
#
4defbc21 |
| 18-Apr-2015 |
Nikita Popov |
Make Error column info attribute based
|
#
33a39fae |
| 14-Apr-2015 |
Gerrit Addiks |
added column-numbers to syntax errors
|