
    )'h                     N    d dl mZ ddlmZ ddlmZ 	 g dZdZ	 	 d
dZ	 	 dd	Z	y)    )absolute_import   )Error)DirtyJSONLoader)loadloadsr   z&Scott Maxwell <scott@codecobblers.com>Nc                 >    t        | j                         |||||      S )a  Deserialize ``fp`` (a ``.read()``-supporting file-like object containing
    a JSON document) to a Python object.

    *encoding* determines the encoding used to interpret any
    :class:`str` objects decoded by this instance (``'utf-8'`` by
    default).  It has no effect when decoding :class:`unicode` objects.

    Note that currently only encodings that are a superset of ASCII work,
    strings of other encodings should be passed in as :class:`unicode`.

    *parse_float*, if specified, will be called with the string of every
    JSON float to be decoded.  By default, this is equivalent to
    ``float(num_str)``. This can be used to use another data type or parser
    for JSON floats (e.g. :class:`decimal.Decimal`).

    *parse_int*, if specified, will be called with the string of every
    JSON int to be decoded.  By default, this is equivalent to
    ``int(num_str)``.  This can be used to use another data type or parser
    for JSON integers (e.g. :class:`float`).

    *parse_constant*, if specified, will be called with one of the
    following strings: ``'-Infinity'``, ``'Infinity'``, ``'NaN'``.  This
    can be used to raise an exception if invalid JSON numbers are
    encountered.
    )r   read)fpencodingparse_float	parse_intparse_constantsearch_for_first_objects         Y/home/kushmeetdev/Regenta/Chatbot/venv/lib/python3.12/site-packages/dirtyjson/__init__.pyr   r   #   s$    6 Hk9n(* *    c                 D    t        | ||||      }|j                  ||      S )a  Deserialize ``s`` (a ``str`` or ``unicode`` instance containing a JSON
    document) to a Python object.

    *encoding* determines the encoding used to interpret any
    :class:`str` objects decoded by this instance (``'utf-8'`` by
    default).  It has no effect when decoding :class:`unicode` objects.

    Note that currently only encodings that are a superset of ASCII work,
    strings of other encodings should be passed in as :class:`unicode`.

    *parse_float*, if specified, will be called with the string of every
    JSON float to be decoded.  By default, this is equivalent to
    ``float(num_str)``. This can be used to use another data type or parser
    for JSON floats (e.g. :class:`decimal.Decimal`).

    *parse_int*, if specified, will be called with the string of every
    JSON int to be decoded.  By default, this is equivalent to
    ``int(num_str)``.  This can be used to use another data type or parser
    for JSON integers (e.g. :class:`float`).

    *parse_constant*, if specified, will be called with one of the
    following strings: ``'-Infinity'``, ``'Infinity'``, ``'NaN'``.  This
    can be used to raise an exception if invalid JSON numbers are
    encountered.
    )r   decode)sr   r   r   r   r   start_indexds           r   r   r   B   s(    6 	8[)^LA88+[99r   )NNNNF)NNNNFr   )

__future__r   errorr   loaderr   __all__
__author__r   r    r   r   <module>r      s9    &  #2 %5
 9=6;*> 9=JK:r   