--- a/PPExpressionParserTest.st Tue Mar 04 15:34:10 2014 +0100
+++ b/PPExpressionParserTest.st Tue Mar 04 15:34:13 2014 +0100
@@ -19,25 +19,25 @@
parserInstance
| expression parens number |
expression := PPExpressionParser new.
- parens := $( asParser token trim , expression , $) asParser token trim
- ==> [ :nodes | nodes second ].
- number := (#digit asParser plus , ($. asParser , #digit asParser plus) optional) token trim
- ==> [ :token | token value asNumber ].
+ parens := $( asParser trim , expression , $) asParser trim
+ ==> [ :value | value second ].
+ number := (#digit asParser plus , ($. asParser , #digit asParser plus) optional) flatten trim
+ ==> [ :value | value asNumber ].
expression term: parens / number.
expression
group: [ :g |
- g prefix: $- asParser token trim do: [ :op :a | a negated ] ];
+ g prefix: $- asParser trim do: [ :op :a | a negated ] ];
group: [ :g |
- g postfix: '++' asParser token trim do: [ :a :op | a + 1 ].
- g postfix: '--' asParser token trim do: [ :a :op | a - 1 ] ];
+ g postfix: '++' asParser trim do: [ :a :op | a + 1 ].
+ g postfix: '--' asParser trim do: [ :a :op | a - 1 ] ];
group: [ :g |
- g right: $^ asParser token trim do: [ :a :op :b | a raisedTo: b ] ];
+ g right: $^ asParser trim do: [ :a :op :b | a raisedTo: b ] ];
group: [ :g |
- g left: $* asParser token trim do: [ :a :op :b | a * b ].
- g left: $/ asParser token trim do: [ :a :op :b | a / b ] ];
+ g left: $* asParser trim do: [ :a :op :b | a * b ].
+ g left: $/ asParser trim do: [ :a :op :b | a / b ] ];
group: [ :g |
- g left: $+ asParser token trim do: [ :a :op :b | a + b ].
- g left: $- asParser token trim do: [ :a :op :b | a - b ] ].
+ g left: $+ asParser trim do: [ :a :op :b | a + b ].
+ g left: $- asParser trim do: [ :a :op :b | a - b ] ].
^ expression end
! !
@@ -73,13 +73,14 @@
!PPExpressionParserTest class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/goodies/petitparser/PPExpressionParserTest.st,v 1.3 2012-05-04 21:59:27 vrany Exp $'
+ ^ '$Header: /cvs/stx/stx/goodies/petitparser/PPExpressionParserTest.st,v 1.4 2014-03-04 14:34:13 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/goodies/petitparser/PPExpressionParserTest.st,v 1.3 2012-05-04 21:59:27 vrany Exp $'
+ ^ '$Header: /cvs/stx/stx/goodies/petitparser/PPExpressionParserTest.st,v 1.4 2014-03-04 14:34:13 cg Exp $'
!
version_SVN
- ^ '§Id: PPExpressionParserTest.st 4 2010-12-18 17:02:23Z kursjan §'
+ ^ '$Id: PPExpressionParserTest.st,v 1.4 2014-03-04 14:34:13 cg Exp $'
! !
+