You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
849 B

# vim: fileencoding=utf-8
#
from .base_format import BaseFormat
from collections import OrderedDict
import json
class JSONFormat(BaseFormat):
def __init__(self, document_text: str, ignore_comments=False):
processing_methods = []
super().__init__(processing_methods)
self._ignore_comments = ignore_comments
self._format = 'json'
if document_text == '':
self._document_dictionary = OrderedDict()
else:
self._text_to_dictionary(document_text)
def _text_to_dictionary(self, json_file_text):
self._document_dictionary = json.loads(json_file_text,
object_pairs_hook=OrderedDict)
def get_document_text(self):
json_file_text = json.dumps(self._document_dictionary, indent=4)
return json_file_text