class_docstr: The parser for Python grammar files.
class_docstr_tok: ["The","parser","for","Python","grammar","files","."]
code: def _parse_atom(self):
      # atom: '(' rhs ')' | NAME | STRING
      if self.value == "(":
          self._gettoken()
          a, z = self._parse_rhs()
          self._expect(PythonTokenTypes.OP, ")")
          return a, z
      elif self.type in (
          PythonTokenTypes.NAME,
          PythonTokenTypes.STRING,
      ):
          a = NFAState(self._current_rule_name)
          z = NFAState(self._current_rule_name)
          # Make it clear that the state transition requires that value.
          a.add_arc(z, self.value)
          self._gettoken()
          return a, z
      else:
          self._raise_error(
              "expected (...) or NAME or STRING, got %s/%s",
              self.type,
              self.value,
          )
  
imports: from parso.python.tokenize import tokenize
  from parso.utils import parse_version_string
  from parso.python.token import PythonTokenTypes
label_desc: Use image node_id 6 for calling the GrammarParser obj's underlying member method code with example usage: obj._parse_atom() and returns: a,  z, a,  z