ó
öÀ„\c           @   s’   d  Z  d d l Z d d l m Z d d l m Z e rQ d d l m Z m	 Z	 n  d e j
 f d „  ƒ  YZ d „  Z d	 „  Z d
 „  Z d „  Z d S(   sÒ   
    sphinx.util.jsonimpl
    ~~~~~~~~~~~~~~~~~~~~

    JSON serializer implementation wrapper.

    :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS.
    :license: BSD, see LICENSE for details.
iÿÿÿÿN(   t	   text_type(   t
   UserString(   t   Anyt   IOt   SphinxJSONEncoderc           B   s   e  Z d  Z d „  Z RS(   s5   JSONEncoder subclass that forces translation proxies.c         C   s,   t  | t ƒ r t | ƒ St j j |  | ƒ S(   N(   t
   isinstanceR   R    t   jsont   JSONEncodert   default(   t   selft   obj(    (    s3   lib/python2.7/site-packages/sphinx/util/jsonimpl.pyR      s    
(   t   __name__t
   __module__t   __doc__R   (    (    (    s3   lib/python2.7/site-packages/sphinx/util/jsonimpl.pyR      s   c         O   s$   t  | d <t j |  | | | Ž d  S(   Nt   cls(   R   R   t   dump(   R
   t   fpt   argst   kwds(    (    s3   lib/python2.7/site-packages/sphinx/util/jsonimpl.pyR      s    
c         O   s   t  | d <t j |  | | Ž S(   NR   (   R   R   t   dumps(   R
   R   R   (    (    s3   lib/python2.7/site-packages/sphinx/util/jsonimpl.pyR   %   s    
c          O   s   t  j |  | Ž  S(   N(   R   t   load(   R   R   (    (    s3   lib/python2.7/site-packages/sphinx/util/jsonimpl.pyR   +   s    c          O   s   t  j |  | Ž  S(   N(   R   t   loads(   R   R   (    (    s3   lib/python2.7/site-packages/sphinx/util/jsonimpl.pyR   0   s    (   R   R   t   sixR    t	   six.movesR   t   Falset   typingR   R   R   R   R   R   R   R   (    (    (    s3   lib/python2.7/site-packages/sphinx/util/jsonimpl.pyt   <module>
   s   				