openmedialibrary_platform/Shared/lib/python3.4/site-packages/ox/jsonc.py

22 lines
541 B
Python
Raw Normal View History

2013-10-11 17:28:32 +00:00
#!/usr/bin/python
# -*- coding: utf-8 -*-
# vi:si:et:sw=4:sts=4:ts=4
2014-09-30 16:15:32 +00:00
from __future__ import with_statement, print_function
2013-10-11 17:28:32 +00:00
2014-09-30 16:15:32 +00:00
from .js import minify
from .utils import json
2013-10-11 17:28:32 +00:00
def load(f):
return loads(f.read())
def loads(source):
try:
minified = minify(source)
return json.loads(minified)
2014-09-30 16:15:32 +00:00
except json.JSONDecodeError as e:
2013-10-11 17:28:32 +00:00
s = minified.split('\n')
context = s[e.lineno-1][max(0, e.colno-1):e.colno+30]
msg = e.msg + ' at ' + context
raise json.JSONDecodeError(msg, minified, e.pos)