--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/compiler/tests/PPExpressionGrammar.st Thu Apr 30 23:43:14 2015 +0200
@@ -0,0 +1,45 @@
+"{ Package: 'stx:goodies/petitparser/compiler/tests' }"
+
+"{ NameSpace: Smalltalk }"
+
+PPCompositeParser subclass:#PPExpressionGrammar
+ instanceVariableNames:'add prod term mul prim parens number'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'PetitCompiler-Tests-ExpressionGrammar'
+!
+
+!PPExpressionGrammar methodsFor:'as yet unclassified'!
+
+add
+ ^ prod , $+ asParser trimmingToken , term
+!
+
+mul
+ ^ prim , $* asParser trimmingToken , prod
+!
+
+number
+ ^ #digit asParser plus trimmingToken ==> [ :token | token inputValue asNumber ]
+!
+
+parens
+ ^ $( asParser trim, term , $) asParser trim
+!
+
+prim
+ ^ parens / number
+!
+
+prod
+ ^ mul / prim
+!
+
+start
+ ^ term end
+!
+
+term
+ ^ add / prod
+! !
+