analyzer/PPSearchRule.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 23 Nov 2015 11:14:30 +0100
changeset 551 00ebb1b85f53
parent 296 24d1270f78e0
permissions -rw-r--r--
Fixed CI scripts on Windows For an unknown reason, unzip on Windows reports status code 50 (presumably "the disk is (or was) full during extraction.") even if there's plenty of space. To workaround this, simply ignore status code 50 on Windows. Sigh.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
204
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/petitparser/analyzer' }"
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
PPRule subclass:#PPSearchRule
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
	instanceVariableNames:'answerBlock'
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
	classVariableNames:''
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	poolDictionaries:''
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
	category:'PetitAnalyzer-Core'
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
!
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
!PPSearchRule class methodsFor:'instance creation'!
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
searchFor: aParser thenDo: aBlock
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
	^ (self searchFor: aParser) setAnswerBlock: aBlock
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
! !
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
!PPSearchRule methodsFor:'initialization'!
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
setAnswerBlock: aBlock
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
	answerBlock := aBlock
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
! !
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
!PPSearchRule methodsFor:'matching'!
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
canMatch: aParser
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
	owner setAnswer: (answerBlock cull: aParser cull: owner answer).
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
	^ super canMatch: aParser
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
!
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
foundMatchFor: aParser 
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
	^ aParser
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
! !
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
!PPSearchRule class methodsFor:'documentation'!
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
version
296
Claus Gittinger <cg@exept.de>
parents: 204
diff changeset
    37
    ^ '$Header: /cvs/stx/stx/goodies/petitparser/analyzer/PPSearchRule.st,v 1.2 2014-03-04 20:27:55 cg Exp $'
204
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
!
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
version_CVS
296
Claus Gittinger <cg@exept.de>
parents: 204
diff changeset
    41
    ^ '$Header: /cvs/stx/stx/goodies/petitparser/analyzer/PPSearchRule.st,v 1.2 2014-03-04 20:27:55 cg Exp $'
204
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
! !
223004340c43 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43