analyzer/PPBlockReplaceRule.st
author sr
Wed, 04 Jul 2018 15:30:19 +0200
changeset 611 38338f2de417
parent 289 2e74af01c21e
permissions -rw-r--r--
build order was wrong
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
196
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/petitparser/analyzer' }"
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
PPReplaceRule subclass:#PPBlockReplaceRule
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
	instanceVariableNames:'replaceBlock'
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
	classVariableNames:''
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	poolDictionaries:''
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
	category:'PetitAnalyzer-Core'
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
!
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
!PPBlockReplaceRule class methodsFor:'instance creation'!
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
searchFor: aSearchParser replaceWith: aReplaceBlock when: aVerificationBlock
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
	^ (self searchFor: aSearchParser) 
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
		setReplaceBlock: aReplaceBlock;
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
		setVerificationBlock: aVerificationBlock;
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
		yourself
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
! !
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
!PPBlockReplaceRule methodsFor:'initialization'!
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
setReplaceBlock: aBlock
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
	replaceBlock := aBlock
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
! !
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
!PPBlockReplaceRule methodsFor:'matching'!
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
foundMatchFor: aParser 
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
	^ replaceBlock cull: aParser
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
! !
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
!PPBlockReplaceRule class methodsFor:'documentation'!
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
version
289
Claus Gittinger <cg@exept.de>
parents: 196
diff changeset
    35
    ^ '$Header: /cvs/stx/stx/goodies/petitparser/analyzer/PPBlockReplaceRule.st,v 1.2 2014-03-04 20:27:48 cg Exp $'
196
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
!
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
version_CVS
289
Claus Gittinger <cg@exept.de>
parents: 196
diff changeset
    39
    ^ '$Header: /cvs/stx/stx/goodies/petitparser/analyzer/PPBlockReplaceRule.st,v 1.2 2014-03-04 20:27:48 cg Exp $'
196
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
! !
520b7167815c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41