summaryrefslogtreecommitdiff
path: root/constructor.py
diff options
context:
space:
mode:
authorAnthon van der Neut <anthon@mnt.org>2017-06-04 14:27:02 +0200
committerAnthon van der Neut <anthon@mnt.org>2017-06-04 14:27:02 +0200
commita0ff58af5242fddc39236168b18aafb7c8b324da (patch)
treeb7ba0da53b720dde7be6e3b32ad927456c6f5dcf /constructor.py
parent6ba66a44af41d072f5ceddfcdf2c21611c2a7cd0 (diff)
downloadruamel.yaml-0.15.0.tar.gz
initial version with YAML class0.15.0
Some new tests are still required
Diffstat (limited to 'constructor.py')
-rw-r--r--constructor.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/constructor.py b/constructor.py
index fd37ddd..4a52b27 100644
--- a/constructor.py
+++ b/constructor.py
@@ -44,7 +44,7 @@ class BaseConstructor(object):
def __init__(self, preserve_quotes=None, loader=None):
# type: (bool, Any) -> None
self.loader = loader
- if self.loader is not None:
+ if self.loader is not None and getattr(self.loader, '_constructor', None) is None:
self.loader._constructor = self
self.loader = loader
self.constructed_objects = {} # type: Dict[Any, Any]
@@ -56,6 +56,8 @@ class BaseConstructor(object):
@property
def composer(self):
# type: () -> Any
+ if hasattr(self.loader, 'typ'):
+ return self.loader.composer
try:
return self.loader._composer
except AttributeError:
@@ -67,6 +69,8 @@ class BaseConstructor(object):
@property
def resolver(self):
# type: () -> Any
+ if hasattr(self.loader, 'typ'):
+ return self.loader.resolver
return self.loader._resolver
def check_data(self):