MCPcopy Index your code
hub / github.com/python/cpython / _parse_fields

Method _parse_fields

Parser/asdl.py:326–340  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

324 return Product(self._parse_fields(), self._parse_optional_attributes())
325
326 def _parse_fields(self):
327 fields = []
328 self._match(TokenKind.LParen)
329 while self.cur_token.kind == TokenKind.TypeId:
330 typename = self._advance()
331 quantifiers = self._parse_optional_field_quantifier()
332 id = (self._advance() if self.cur_token.kind in self._id_kinds
333 else None)
334 fields.append(Field(typename, id, quantifiers=quantifiers))
335 if self.cur_token.kind == TokenKind.RParen:
336 break
337 elif self.cur_token.kind == TokenKind.Comma:
338 self._advance()
339 self._match(TokenKind.RParen)
340 return fields
341
342 def _parse_optional_fields(self):
343 if self.cur_token.kind == TokenKind.LParen:

Callers 3

_parse_productMethod · 0.95

Calls 5

_matchMethod · 0.95
_advanceMethod · 0.95
FieldClass · 0.70
appendMethod · 0.45

Tested by

no test coverage detected