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","."]
docstr: Return a new free identifier as :class:`~jinja2.nodes.InternalName`.
docstr_tok: ["Return","a","new","free","identifier","as",":","class",":","`","~jinja2.nodes.InternalName","`","."]
code: def free_identifier(self, lineno=None):
      """Return a new free identifier as :class:`~jinja2.nodes.InternalName`."""
      self._last_identifier += 1
      rv = object.__new__(nodes.InternalName)
      nodes.Node.__init__(
          rv, "fi%d" % self._last_identifier, lineno=lineno
      )
      return rv
  
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 7 for calling the Parser obj's underlying member method code with example usage: obj.free_identifier(lineno) and returns: rv