compiler/tests/extras/PPCLRPWildcardTransition.st
changeset 515 b5316ef15274
child 518 a6d8b93441b0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/compiler/tests/extras/PPCLRPWildcardTransition.st	Mon Aug 17 12:13:16 2015 +0100
@@ -0,0 +1,41 @@
+"{ Package: 'stx:goodies/petitparser/compiler/tests/extras' }"
+
+"{ NameSpace: Smalltalk }"
+
+PPCLRPTransition subclass:#PPCLRPWildcardTransition
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'PetitCompiler-Extras-Tests-LRP'
+!
+
+!PPCLRPWildcardTransition class methodsFor:'instance creation'!
+
+on: anEvent from: startState to: endState name: aString
+
+    self error: 'Wildcard transitions have no from state. Use on:to:name: instead.'
+!
+
+on: anEvent to: endState name: aString
+    |retval|
+    retval := self new.
+    retval eventname: anEvent.
+    retval from: '*'.
+    retval to: endState.
+    retval name: aString.
+    ^ retval.
+! !
+
+!PPCLRPWildcardTransition methodsFor:'printing'!
+
+printOn: aStream
+
+    aStream nextPutAll: 'PPCLRPWildcardTransition '.
+    aStream nextPutAll: self name.
+    aStream nextPutAll: ' : *->'.
+    aStream nextPutAll: self to.
+    aStream nextPutAll: ' on '.
+    aStream nextPutAll: self eventname.
+    
+! !
+