summaryrefslogtreecommitdiff
path: root/main.py
diff options
context:
space:
mode:
authorAnthon van der Neut <anthon@mnt.org>2018-08-12 20:21:22 +0200
committerAnthon van der Neut <anthon@mnt.org>2018-08-12 20:21:22 +0200
commit3d972c045bab860b93ee6c28c61dabeafe81d7e9 (patch)
treea05e2a1fb14aad3883af1d3b4507cc12ce70cc6c /main.py
parentbf95947e11492f1060819036694daed38237d10e (diff)
downloadruamel.yaml-3d972c045bab860b93ee6c28c61dabeafe81d7e9.tar.gz
fix issue #172 compact JSON no longer parsing
This was quite intrusive, because loosing the tests surrounding the colon made flow style lists with ::vector as key fail. Had to keept track of whether in a flow-style mapping or sequence to get this solved *When this change indeed resolves your problem, please **Close** this issue*. *(You can do so usingthe WorkFlow pull-down (close to the top right of this page)*
Diffstat (limited to 'main.py')
-rw-r--r--main.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/main.py b/main.py
index fa9db38..4afaa78 100644
--- a/main.py
+++ b/main.py
@@ -639,7 +639,6 @@ class YAML(object):
self.constructor.add_constructor(tag, f_y)
return cls
-
def parse(self, stream):
# type: (StreamTextType, Any) -> Any
"""
@@ -920,6 +919,14 @@ def load(stream, Loader=None, version=None, preserve_quotes=None):
return loader._constructor.get_single_data()
finally:
loader._parser.dispose()
+ try:
+ loader._reader.reset_reader() # type: ignore
+ except AttributeError:
+ pass
+ try:
+ loader._scanner.reset_scanner() # type: ignore
+ except AttributeError:
+ pass
def load_all(stream, Loader=None, version=None, preserve_quotes=None):
@@ -937,6 +944,14 @@ def load_all(stream, Loader=None, version=None, preserve_quotes=None):
yield loader._constructor.get_data()
finally:
loader._parser.dispose()
+ try:
+ loader._reader.reset_reader() # type: ignore
+ except AttributeError:
+ pass
+ try:
+ loader._scanner.reset_scanner() # type: ignore
+ except AttributeError:
+ pass
def safe_load(stream, version=None):