Author: pmichaud
Date: Fri Mar 28 11:13:40 2008
New Revision: 26595
Modified:
trunk/compilers/json/JSON/grammar.pg
trunk/config/gen/makefiles/json.in
Log:
[json]:
* Convert JSON to use Perl6Regex and Perl6Grammar instead of the
deprecated P6Regex and pgc tools (RT#48028).
Modified: trunk/compilers/json/JSON/grammar.pg
==============================================================================
--- trunk/compilers/json/JSON/grammar.pg (original)
+++ trunk/compilers/json/JSON/grammar.pg Fri Mar 28 11:13:40 2008
@@ -2,13 +2,13 @@
grammar JSON;
-rule object { \{ <members>? \} }
-rule array { \[ \] | \[ <elements> \] }
-rule string { "<char>*" }
+rule object { '{' <members>? '}' }
+rule array { '[' ']' | '[' <elements> ']' }
+rule string { \"<char>*\" }
-rule members { <string> \: <thing> [, <string> \: <thing> ]* }
+rule members { <string> ':' <thing> [',' <string> ':' <thing> ]* }
-rule elements { <thing> [, <thing> ]* }
+rule elements { <thing> [',' <thing> ]* }
# XXX This should be called 'value', but...
# RT#40069: [PGE] "value" can't be used as a rule name.
@@ -32,10 +32,10 @@
}
token number {
- <?ws>
- -?
+ <.ws>
+ '-'?
[ <[1..9]> <[0..9]>+ | <[0..9]> ]
- [ \. <[0..9]>+ ]?
+ [ '.' <[0..9]>+ ]?
[ <[Ee]> <[+\-]>? <[0..9]>+ ]?
- <?ws>
+ <.ws>
}
Modified: trunk/config/gen/makefiles/json.in
==============================================================================
--- trunk/config/gen/makefiles/json.in (original)
+++ trunk/config/gen/makefiles/json.in Fri Mar 28 11:13:40 2008
@@ -42,7 +42,7 @@
$(PARROT) --output=JSON/grammar.pbc JSON/grammar.pir
JSON/grammar.pir : JSON/grammar.pg
- $(PARROT) $(PGE_DIR)/pgc.pir --output=JSON/grammar.pir JSON/grammar.pg
+ $(PARROT) $(TOOL_DIR)/runtime/parrot/library/PGE/Perl6Grammar.pbc
--output=JSON/grammar.pir JSON/grammar.pg
JSON/pge2pir.pbc : JSON/pge2pir.pir
$(PARROT) --output=JSON/pge2pir.pbc JSON/pge2pir.pir