summaryrefslogtreecommitdiff
path: root/scanner.py
diff options
context:
space:
mode:
authorsixolet <naomi@seyfer.org>2018-09-06 10:45:49 -0700
committersixolet <naomi@seyfer.org>2018-09-06 10:45:49 -0700
commitd1b56331c091376d9afc88a5b0b533a89034e7cd (patch)
treef357f30c75202b7ccc813a987c97fd799e6cdcba /scanner.py
parentc93735f860031c38616acbff83ce7ce55f30f40f (diff)
downloadruamel.yaml-d1b56331c091376d9afc88a5b0b533a89034e7cd.tar.gz
Respond to comments on PR; leave errors for parser to find.
Diffstat (limited to 'scanner.py')
-rw-r--r--scanner.py18
1 files changed, 9 insertions, 9 deletions
diff --git a/scanner.py b/scanner.py
index b8e9ece..656642f 100644
--- a/scanner.py
+++ b/scanner.py
@@ -521,23 +521,23 @@ class Scanner(object):
def fetch_flow_sequence_end(self):
# type: () -> None
- self.fetch_flow_collection_end(FlowSequenceEndToken, to_pop='[')
+ self.fetch_flow_collection_end(FlowSequenceEndToken)
def fetch_flow_mapping_end(self):
# type: () -> None
- self.fetch_flow_collection_end(FlowMappingEndToken, to_pop='{')
+ self.fetch_flow_collection_end(FlowMappingEndToken)
- def fetch_flow_collection_end(self, TokenClass, to_pop):
+ def fetch_flow_collection_end(self, TokenClass):
# type: (Any, Text) -> None
# Reset possible simple key on the current level.
self.remove_possible_simple_key()
# Decrease the flow level.
- if not self.flow_context:
- raise ScannerError(None, None, 'unmatched ending bracket', self.reader.get_mark())
- popped = self.flow_context.pop()
- if popped != to_pop:
- raise ScannerError(None, None, 'expected %s found %s' % (to_pop, popped),
- self.reader.get_mark())
+ try:
+ popped = self.flow_context.pop()
+ except IndexError:
+ # We must not be in a list or object.
+ # Defer error handling to the parser.
+ pass
# No simple keys after ']' or '}'.
self.allow_simple_key = False
# Add FLOW-SEQUENCE-END or FLOW-MAPPING-END.