class_docstr: This is the central parsing class Jinja uses.  It's passed to
  extensions and can be used to parse expressions or statements.
class_docstr_tok: ["This","is","the","central","parsing","class","Jinja","uses",".","It","'s","passed","to","extensions","and","can","be","used","to","parse","expressions","or","statements","."]
code: def parse_call_block(self):
      node = nodes.CallBlock(lineno=next(self.stream).lineno)
      if self.stream.current.type == "lparen":
          self.parse_signature(node)
      else:
          node.args = []
          node.defaults = []
  
      node.call = self.parse_expression()
      if not isinstance(node.call, nodes.Call):
          self.fail("expected call", node.lineno)
      node.body = self.parse_statements(
          ("name:endcall",), drop_needle=True
      )
      return node
  
imports: from .None import nodes
  from ._compat import imap
  from .exceptions import TemplateAssertionError
  from .exceptions import TemplateSyntaxError
  from .lexer import describe_token
  from .lexer import describe_token_expr
label_desc: Use image node_id 22 for calling the Parser obj's underlying member method code with example usage: obj.parse_call_block() and returns: node