Fix in codegen for inlined sequence nodes.
For inlined sequence nodes, generate nested ifs rather than sequential code which
does not work when inlined. The reason is that #codeReturn: in inline generates
instvar assignment, not method return, so in sequential code the next child of a sequence
will be probed even if previous failed. If that happends, the whole sequence fail and therefore
we must generate nested ifs to correctly handle this w.r.t. inlining.
"{ Package: 'stx:goodies/petitparser' }"
PPDelegateParser subclass:#PPOptionalParser
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
category:'PetitParser-Parsers'
!
!PPOptionalParser methodsFor:'parsing'!
parseOn: aPPContext
| element |
element := parser parseOn: aPPContext.
^ element isPetitFailure ifFalse: [ element ]
! !
!PPOptionalParser class methodsFor:'documentation'!
version_SVN
^ '$Id: PPOptionalParser.st,v 1.4 2014-03-04 14:33:10 cg Exp $'
! !