MCPcopy Create free account
hub / github.com/apache/madlib / parse_document_start

Method parse_document_start

src/madpack/yaml/parser.py:156–185  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

154 return self.parse_document_start()
155
156 def parse_document_start(self):
157
158 # Parse any extra document end indicators.
159 while self.check_token(DocumentEndToken):
160 self.get_token()
161
162 # Parse an explicit document.
163 if not self.check_token(StreamEndToken):
164 token = self.peek_token()
165 start_mark = token.start_mark
166 version, tags = self.process_directives()
167 if not self.check_token(DocumentStartToken):
168 raise ParserError(None, None,
169 "expected '<document start>', but found %r"
170 % self.peek_token().id,
171 self.peek_token().start_mark)
172 token = self.get_token()
173 end_mark = token.end_mark
174 event = DocumentStartEvent(start_mark, end_mark,
175 explicit=True, version=version, tags=tags)
176 self.states.append(self.parse_document_end)
177 self.state = self.parse_document_content
178 else:
179 # Parse the end of the stream.
180 token = self.get_token()
181 event = StreamEndEvent(token.start_mark, token.end_mark)
182 assert not self.states
183 assert not self.marks
184 self.state = None
185 return event
186
187 def parse_document_end(self):
188

Callers 1

Calls 7

process_directivesMethod · 0.95
ParserErrorClass · 0.85
DocumentStartEventClass · 0.85
StreamEndEventClass · 0.85
check_tokenMethod · 0.80
get_tokenMethod · 0.80
peek_tokenMethod · 0.80

Tested by

no test coverage detected