JSON – SuperObject
JSON toolkit is compatible with Delphi and Freepascal(win32/64 linux32/64).
Features:
- Fastest JSON parser for Delphi.
- XML to JSON parser.
- Easy to use.
- JSON Validator.
- JSON-RPC.
- Can write JSON format to be human readable.
History:
v1.2
+ Support of currency data type
+ Right trim unquoted string.
+ Read Unicode Files and streams (Litle Endian with BOM).
+ Fix bug on javadate functions + windows nt compatibility.
+ Now you can force to parse only the canonical syntax of JSON using the stric parameter.
+ Delphi 2010 RTTI marshalling.
v1.1
+ Double licence MPL or LGPL.
+ Delphi 2009 compatibility & Unicode support.
+ AsString return a string instead of PChar.
+ Escaped and Unascaped JSON serialiser.
+ Missed FormFeed added \f
- Removed @ trick, uses forcepath() method instead.
+ Fixed parse error with uppercase E symbol in numbers.
+ Fixed possible buffer overflow when enlarging array.
+ Added “delete”, “pack”, “insert” methods for arrays and/or objects
+ Multi parametters when calling methods
+ Delphi Enumerator (for obj1 in obj2 do …)
+ Format method ex: obj.format(‘%tab[1]%’)
+ ParseFile and ParseStream methods
+ Parser now understand hexdecimal c syntax ex: \xFF
+ Null Object Design Patern (ex: for obj in values.N['path'] do …)
v1.0
+ renamed class and files
+ interfaced object
+ added a new data type: the method
+ parser can now evaluate properties and call methods
+ removed variant implementation (deprecated)
- removed obselet rpc class
- removed “find” method, now you can use “parse” method instead
v0.5
+ new find method to get or set value using a path syntax
ex: obj.s['obj.prop[1]‘] := ‘string value’;
obj.a['@obj.array'].b[n] := true; // @ -> create property if necessary
v0.4
+ bug corrected: AVL tree badly balanced.
v0.3
+ New validator partially based on the Kwalify syntax.
+ extended syntax to parse unquoted fields.
+ Freepascal compatibility win32/64 Linux32/64.
+ JavaToDelphiDateTime and DelphiToJavaDateTime improved for UTC.
+ new TJsonObject.Compare function.
v0.2
+ Hashed string list replaced with a faster AVL tree
+ JsonInt data type can be changed to int64
+ JavaToDelphiDateTime and DelphiToJavaDateTime helper fonctions
+ from json-c v0.7
+ Add escaping of backslash to json output
+ Add escaping of foward slash on tokenizing and output
+ Changes to internal tokenizer from using recursion to
using a depth state structure to allow incremental parsing
v0.1
+ first release