# HG changeset patch # User Claus Gittinger # Date 1393943653 -3600 # Node ID 7532226d63898a7cf4cafd3be5d46c82128e30a8 # Parent 8fc35b70c3b96868e4e83c06b2d6de9fe811af47 update diff -r 8fc35b70c3b9 -r 7532226d6389 PPExpressionParserTest.st --- 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 $' ! ! +