--- parser3/tests/253.html 2010/09/24 22:56:35 1.3
+++ parser3/tests/253.html 2014/05/04 01:45:43 1.7
@@ -3,25 +3,27 @@
$f[^file::load[text;253_json.txt; $.charset[windows-1251]]]
$s[^taint[as-is][$f.text]]
-^try_catch{$o[^json:parse[$s]]}
+^try-catch{$o[^json:parse[$s]]}
-$o[^json:parse[$s][ $.distinct[first] ]]
+$o[^json:parse[$s][ $.object[$hook] $.distinct[first] ]]
^print[$o]
$o[^json:parse[$s][ $.double(false) $.distinct[last] ]]
^print[$o]
-$o[^json:parse[$s][ $.object[$hook] $.distinct[all] ]]
+$o[^json:parse[$s][ $.int(false) $.distinct[last] ]]
^print[$o]
-@try_catch[code]
-^try{
- $code
-}{
- $exception.handled(true)
- $exception.source
- $exception.comment
-}
+$o[^json:parse[$s][ $.object[$hook_key] $.distinct[all] ]]
+^print[$o]
+
+$s[[1,{"type":"class1","value":"3"},4]]
+
+$o[^json:parse[$s][ $.object[$hook] ]]
+^print[$o]
+
+$o[^json:parse[$s]]
+^print[$o]
@print[hash]
^json:string[$hash; $.indent(1)]
@@ -29,6 +31,9 @@ $o[^json:parse[$s][ $.object[$hook] $.di
@hook[key;value]
$result[^if(def $value.type){^reflection:create[$value.type;create;$value]}{$value}]
+@hook_key[key;value]
+$result[^if($key eq 'object'){^reflection:create[$value.type;create;$value]}{$value}]
+
@CLASS
class1