analyzer/PPParserReplaceRule.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 30 Jul 2015 08:37:37 +0100
changeset 510 869853decf31
parent 381 0bbbcf5da2d4
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' }"

PPReplaceRule subclass:#PPParserReplaceRule
	instanceVariableNames:'replaceParser'
	classVariableNames:''
	poolDictionaries:''
	category:'PetitAnalyzer-Core'
!


!PPParserReplaceRule class methodsFor:'instance creation'!

searchFor: aSearchParser replaceWith: aReplaceParser when: aVerificationBlock
	^ (self searchFor: aSearchParser) 
		setReplaceParser: aReplaceParser;
		setVerificationBlock: aVerificationBlock;
		yourself
! !

!PPParserReplaceRule methodsFor:'initialization'!

setReplaceParser: aParser
	replaceParser := aParser
! !

!PPParserReplaceRule methodsFor:'matching'!

foundMatchFor: aParser 
	^ replaceParser copyInContext: owner context
! !

!PPParserReplaceRule class methodsFor:'documentation'!

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

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

version_HG

    ^ '$Changeset: <not expanded> $'
! !