summaryrefslogtreecommitdiff
path: root/emitter.py
diff options
context:
space:
mode:
authorAnthon van der Neut <anthon@mnt.org>2018-12-27 23:37:32 +0100
committerAnthon van der Neut <anthon@mnt.org>2018-12-27 23:37:32 +0100
commit25b7008eb7721763fe0ea10cc23abeed2c1ef780 (patch)
tree6ea378f32bd05947a84bcdceedc1d90418aca13f /emitter.py
parentcdb3ca654eb8f6ef734b82bf9130045ce6d85e45 (diff)
downloadruamel.yaml-25b7008eb7721763fe0ea10cc23abeed2c1ef780.tar.gz
roundtrip anchors/aliases on str, int, float
Diffstat (limited to 'emitter.py')
-rw-r--r--emitter.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/emitter.py b/emitter.py
index 61ca269..7829219 100644
--- a/emitter.py
+++ b/emitter.py
@@ -402,12 +402,14 @@ class Emitter(object):
if isinstance(self.event, AliasEvent):
self.expect_alias()
elif isinstance(self.event, (ScalarEvent, CollectionStartEvent)):
- self.process_anchor(u'&')
+ if self.process_anchor(u'&') and isinstance(self.event, ScalarEvent):
+ self.no_newline = True
self.process_tag()
if isinstance(self.event, ScalarEvent):
+ # nprint('@', self.indention, self.no_newline, self.column)
self.expect_scalar()
elif isinstance(self.event, SequenceStartEvent):
- # nprintf('@', self.indention, self.no_newline, self.column)
+ # nprint('@', self.indention, self.no_newline, self.column)
i2, n2 = self.indention, self.no_newline # NOQA
if self.event.comment:
if self.event.flow_style is False and self.event.comment:
@@ -757,15 +759,16 @@ class Emitter(object):
# Anchor, Tag, and Scalar processors.
def process_anchor(self, indicator):
- # type: (Any) -> None
+ # type: (Any) -> bool
if self.event.anchor is None:
self.prepared_anchor = None
- return
+ return False
if self.prepared_anchor is None:
self.prepared_anchor = self.prepare_anchor(self.event.anchor)
if self.prepared_anchor:
self.write_indicator(indicator + self.prepared_anchor, True)
self.prepared_anchor = None
+ return True
def process_tag(self):
# type: () -> None