Open darronschall opened 14 years ago
Updated by Touvan on 2010-02-17T21:54:32
oh, or maybe JSONTokenizer.as
Updated by Touvan on 2010-03-03T19:35:51
I did this in JSONTokenizer, though I'm sure a property with the line number and a way to append it in the parseError (where the rest of the message is constructed) call would be more appropriate. This worked for my needs though.
public function parseError( message:String ):void { throw new JSONParseError( message + " (line " + jsonString.substring(0, loc).split("\n").length +")", loc, jsonString ); }
Originally filed by Touvan on 2010-02-17T21:42:37
What steps will reproduce the problem?
You can get the line number using something like this:
try { JSON.decode(rawJSONString); } catch (e:JSONParseError) { String(rawJSONString).substring(0, e.location).split("\n").length }
It would be nicer if it was already included in the error text.
I'd be happy to make a patch if you are interested (I assume I'd have to patch the tokenizer.parseError() lines in JSONDecoder.as ..)