parameters: (obj, fp, skipkeys=False, ensure_ascii=True, check_circular=True,
          allow_nan=True, cls=None, indent=None, separators=None,
          encoding='utf-8', default=None, **kw)
docstring: Serialize ``obj`` as a JSON formatted stream to ``fp`` (a
      ``.write()``-supporting file-like object).
  
      If ``skipkeys`` is true then ``dict`` keys that are not basic types
      (``str``, ``unicode``, ``int``, ``long``, ``float``, ``bool``, ``None``)
      will be skipped instead of raising a ``TypeError``.
  
      If ``ensure_ascii`` is false, then the some chunks written to ``fp``
      may be ``unicode`` instances, subject to normal Python ``str`` to
      ``unicode`` coercion rules. Unless ``fp.write()`` explicitly
      understands ``unicode`` (as in ``codecs.getwriter()``) this is likely
      to cause an error.
  
      If ``check_circular`` is false, then the circular reference check
      for container types will be skipped and a circular reference will
      result in an ``OverflowError`` (or worse).
  
      If ``allow_nan`` is false, then it will be a ``ValueError`` to
      serialize out of range ``float`` values (``nan``, ``inf``, ``-inf``)
      in strict compliance of the JSON specification, instead of using the
      JavaScript equivalents (``NaN``, ``Infinity``, ``-Infinity``).
  
      If ``indent`` is a non-negative integer, then JSON array elements and
      object members will be pretty-printed with that indent level. An indent
      level of 0 will only insert newlines. ``None`` is the most compact
      representation.
  
      If ``separators`` is an ``(item_separator, dict_separator)`` tuple
      then it will be used instead of the default ``(', ', ': ')`` separators.
      ``(',', ':')`` is the most compact JSON representation.
  
      ``encoding`` is the character encoding for str instances, default is UTF-8.
  
      ``default(obj)`` is a function that should return a serializable version
      of obj or raise TypeError. The default simply raises TypeError.
  
      To use a custom ``JSONEncoder`` subclass (e.g. one that overrides the
      ``.default()`` method to serialize additional types), specify it with
      the ``cls`` kwarg; otherwise ``JSONEncoder`` is used.
docstring_summary: Serialize ``obj`` as a JSON formatted stream to ``fp`` (a
      ``.write()``-supporting file-like object).
docstring_tokens: Serialize obj as a JSON formatted stream to fp ( a . write () - supporting file - like object ) .
function: def dump(obj, fp, skipkeys=False, ensure_ascii=True, check_circular=True,
          allow_nan=True, cls=None, indent=None, separators=None,
          encoding='utf-8', default=None, **kw):
      """Serialize ``obj`` as a JSON formatted stream to ``fp`` (a
      ``.write()``-supporting file-like object).
  
      If ``skipkeys`` is true then ``dict`` keys that are not basic types
      (``str``, ``unicode``, ``int``, ``long``, ``float``, ``bool``, ``None``)
      will be skipped instead of raising a ``TypeError``.
  
      If ``ensure_ascii`` is false, then the some chunks written to ``fp``
      may be ``unicode`` instances, subject to normal Python ``str`` to
      ``unicode`` coercion rules. Unless ``fp.write()`` explicitly
      understands ``unicode`` (as in ``codecs.getwriter()``) this is likely
      to cause an error.
  
      If ``check_circular`` is false, then the circular reference check
      for container types will be skipped and a circular reference will
      result in an ``OverflowError`` (or worse).
  
      If ``allow_nan`` is false, then it will be a ``ValueError`` to
      serialize out of range ``float`` values (``nan``, ``inf``, ``-inf``)
      in strict compliance of the JSON specification, instead of using the
      JavaScript equivalents (``NaN``, ``Infinity``, ``-Infinity``).
  
      If ``indent`` is a non-negative integer, then JSON array elements and
      object members will be pretty-printed with that indent level. An indent
      level of 0 will only insert newlines. ``None`` is the most compact
      representation.
  
      If ``separators`` is an ``(item_separator, dict_separator)`` tuple
      then it will be used instead of the default ``(', ', ': ')`` separators.
      ``(',', ':')`` is the most compact JSON representation.
  
      ``encoding`` is the character encoding for str instances, default is UTF-8.
  
      ``default(obj)`` is a function that should return a serializable version
      of obj or raise TypeError. The default simply raises TypeError.
  
      To use a custom ``JSONEncoder`` subclass (e.g. one that overrides the
      ``.default()`` method to serialize additional types), specify it with
      the ``cls`` kwarg; otherwise ``JSONEncoder`` is used.
  
      """
      # cached encoder
      if (not skipkeys and ensure_ascii and
          check_circular and allow_nan and
          cls is None and indent is None and separators is None and
          encoding == 'utf-8' and default is None and not kw):
          iterable = _default_encoder.iterencode(obj)
      else:
          if cls is None:
              cls = JSONEncoder
          iterable = cls(skipkeys=skipkeys, ensure_ascii=ensure_ascii,
              check_circular=check_circular, allow_nan=allow_nan, indent=indent,
              separators=separators, encoding=encoding,
              default=default, **kw).iterencode(obj)
      # could accelerate with writelines in some versions of Python, at
      # a debuggability cost
      for chunk in iterable:
          fp.write(chunk)
function_tokens: def dump ( obj , fp , skipkeys = False , ensure_ascii = True , check_circular = True , allow_nan = True , cls = None , indent = None , separators = None , encoding = 'utf-8' , default = None , * * kw ) : # cached encoder if ( not skipkeys and ensure_ascii and check_circular and allow_nan and cls is None and indent is None and separators is None and encoding == 'utf-8' and default is None and not kw ) : iterable = _default_encoder . iterencode ( obj ) else : if cls is None : cls = JSONEncoder iterable = cls ( skipkeys = skipkeys , ensure_ascii = ensure_ascii , check_circular = check_circular , allow_nan = allow_nan , indent = indent , separators = separators , encoding = encoding , default = default , * * kw ) . iterencode ( obj ) # could accelerate with writelines in some versions of Python, at # a debuggability cost for chunk in iterable : fp . write ( chunk )