PluggableParseNodeVisitor.st
author Stefan Vogel <sv@exept.de>
Tue, 03 Dec 2019 16:39:04 +0100
changeset 4605 2a55645d55eb
parent 4543 b2f5c92b579b
child 4723 524785227024
permissions -rw-r--r--
#BUGFIX by stefan class: ByteCodeCompiler changed: #compile:forClass:inCategory:notifying:install:skipIfSame:silent:foldConstants:ifFail: #isHandled not understood by exception instance (only by class)

"{ Encoding: utf8 }"

"{ Package: 'stx:libcomp' }"

"{ NameSpace: Smalltalk }"

ParseNodeVisitor subclass:#PluggableParseNodeVisitor
	instanceVariableNames:'actionsPerNodeType'
	classVariableNames:''
	poolDictionaries:''
	category:'System-Compiler-Support'
!

!PluggableParseNodeVisitor class methodsFor:'documentation'!

documentation
"
    obsolete not, because the superclass is now pluggable.
    left in the system for a while for backward compatibility.

    a pluggable node visitor.
    setup with:
        actionForNodeClass:aClass put:aBlock
        
    for example, if you are only interested in assignments,
    use the following code:
        |v|
        v := PluggableParseNodeVisitor new.
        v actionForNodeClass:AssignmentNode put:[:node | Transcript showCR:node. true].
        v visit:(Parser parse:code in:someClass.
"
! !

!PluggableParseNodeVisitor class methodsFor:'queries'!

isObsolete   
    ^ true
! !

!PluggableParseNodeVisitor class methodsFor:'documentation'!

version
    ^ '$Header$'
!

version_CVS
    ^ '$Header$'
! !