Use #deepCopy instead of #copy when copying RB parse tree
...because #copy make a copy if child nodes but does not set their parents properly.
Therefore node replacing does not work because it replaces it in wrong tree (original,
not the copy).
"{ Package: 'stx:goodies/petitparser/compiler' }"
"{ NameSpace: Smalltalk }"
PPCDelegateNode subclass:#PPCPlusNode
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
category:'PetitCompiler-Nodes'
!
!PPCPlusNode methodsFor:'analysis'!
recognizedSentencesPrim
^ #()
! !
!PPCPlusNode methodsFor:'as yet unclassified'!
followSets: aFollowDictionary firstSets: aFirstDictionary into: aSet suchThat: aBlock
| first |
super followSets: aFollowDictionary firstSets: aFirstDictionary into: aSet suchThat: aBlock.
first := aFirstDictionary at: self.
(aFollowDictionary at: child) addAll: (first reject: [:each | each isNullable])
!
prefix
^ #plus
! !
!PPCPlusNode methodsFor:'visiting'!
accept: visitor
^ visitor visitPlusNode: self
! !
!PPCPlusNode class methodsFor:'documentation'!
version_HG
^ '$Changeset: <not expanded> $'
! !