compiler/PPCCheckingVisitor.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 02 Jul 2018 08:46:03 +0200
changeset 557 5ddba1e78795
parent 538 16e8536f5cfb
permissions -rw-r--r--
Tagged Smalltalk/X 8.0.0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
534
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/petitparser/compiler' }"
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
"{ NameSpace: Smalltalk }"
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
PPCPassVisitor subclass:#PPCCheckingVisitor
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	instanceVariableNames:''
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:''
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'PetitCompiler-Visitors'
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
!PPCCheckingVisitor methodsFor:'visiting'!
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
538
16e8536f5cfb PPCConfiguration refactoring: [10/10]: Cleaned up compilation API
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 534
diff changeset
    14
beforeAccept: node
534
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
    | message |
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
    message := node check.
538
16e8536f5cfb PPCConfiguration refactoring: [10/10]: Cleaned up compilation API
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 534
diff changeset
    18
    message notNil ifTrue:[ self error: message ].       
534
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
    ^node
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
538
16e8536f5cfb PPCConfiguration refactoring: [10/10]: Cleaned up compilation API
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 534
diff changeset
    21
    "Created: / 07-09-2015 / 13:05:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
534
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    22
! !
a949c4fe44df PPCConfiguration refactoring: [6/10]: use #runPass: instead of self-sends.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23