analyzer/PPSearchRule.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 30 Jul 2015 08:37:37 +0100
changeset 510 869853decf31
parent 296 24d1270f78e0
permissions -rw-r--r--
Tests refactoring - use generated test cases to make sure all posibilities are tested. Do not generate resource for all combinations, use PPCSetUpBeforeTearDownAfterResource instead that delegates parser compilation to the testcase itself (it calls it's #setUpBefore method).

"{ Package: 'stx:goodies/petitparser/analyzer' }"

PPRule subclass:#PPSearchRule
	instanceVariableNames:'answerBlock'
	classVariableNames:''
	poolDictionaries:''
	category:'PetitAnalyzer-Core'
!


!PPSearchRule class methodsFor:'instance creation'!

searchFor: aParser thenDo: aBlock
	^ (self searchFor: aParser) setAnswerBlock: aBlock
! !

!PPSearchRule methodsFor:'initialization'!

setAnswerBlock: aBlock
	answerBlock := aBlock
! !

!PPSearchRule methodsFor:'matching'!

canMatch: aParser
	owner setAnswer: (answerBlock cull: aParser cull: owner answer).
	^ super canMatch: aParser
!

foundMatchFor: aParser 
	^ aParser
! !

!PPSearchRule class methodsFor:'documentation'!

version
    ^ '$Header: /cvs/stx/stx/goodies/petitparser/analyzer/PPSearchRule.st,v 1.2 2014-03-04 20:27:55 cg Exp $'
!

version_CVS
    ^ '$Header: /cvs/stx/stx/goodies/petitparser/analyzer/PPSearchRule.st,v 1.2 2014-03-04 20:27:55 cg Exp $'
! !