ó
čžbc           @   sj  d  Z  d d l m Z d d l m Z m Z d d l m Z m Z m	 Z	 m
 Z
 m Z e   d  Z e   d  Z d g Z d Z e r d d	 l Z n  d d	 l Z d d	 l Z e j j ră d
 e j k ră e j d
 j d  Z n  [ d Z e j d  d k r/e j j e  r/e j j e  j d  Z n  g  d  Z e j d  d k rZd   Z n	 d   Z [ d	 S(   sŰ  Simple API for XML (SAX) implementation for Python.

This module provides an implementation of the SAX 2 interface;
information about the Java version of the interface can be found at
http://www.megginson.com/SAX/.  The Python version of the interface is
documented at <...>.

This package contains the following modules:

handler -- Base classes and constants which define the SAX 2 API for
           the 'client-side' of SAX for Python.

saxutils -- Implementation of the convenience classes commonly used to
            work with SAX.

xmlreader -- Base classes and constants which define the SAX 2 API for
             the parsers used with SAX for Python.

expatreader -- Driver that allows use of the Expat parser with SAX.
i˙˙˙˙(   t   InputSource(   t   ContentHandlert   ErrorHandler(   t   SAXExceptiont   SAXNotRecognizedExceptiont   SAXParseExceptiont   SAXNotSupportedExceptiont   SAXReaderNotAvailablec         C   s4   t    } | j |  | j |  | j |   d  S(   N(   t   make_parsert   setContentHandlert   setErrorHandlert   parse(   t   sourcet   handlert   errorHandlert   parser(    (    s&   /usr/lib/python2.7/xml/sax/__init__.pyR      s    	c         C   s    y d d l  m } Wn! t k
 r7 d d l m } n X| d  k rP t   } n  t   } | j |  | j |  t   } | j	 | |    | j
 |  d  S(   Ni˙˙˙˙(   t   StringIO(   t	   cStringIOR   t   ImportErrort   NoneR   R   R	   R
   R    t   setByteStreamR   (   t   stringR   R   R   R   t   inpsrc(    (    s&   /usr/lib/python2.7/xml/sax/__init__.pyt   parseString#   s    		s   xml.sax.expatreaderi    Nt   PY_SAX_PARSERt   ,s   python.xml.sax.parseri   t   javac         C   s}   xg |  t  D][ } y t |  SWq t k
 rU } d d l } | | j k rf   qf q t k
 re q Xq Wt d d   d S(   s&  Creates and returns a SAX parser.

    Creates the first parser it is able to instantiate of the ones
    given in the list created by doing parser_list +
    default_parser_list.  The lists must contain the names of Python
    modules containing both a SAX parser and a create_parser function.i˙˙˙˙Ns   No parsers found(   t   default_parser_listt   _create_parserR   t   syst   modulesR   R   (   t   parser_listt   parser_namet   eR   (    (    s&   /usr/lib/python2.7/xml/sax/__init__.pyR   G   s    	c         C   s2   d d l  m } | j |  d t    } | j   S(   Ni˙˙˙˙(   t   impi    (   t   org.python.coreR"   t
   importNamet   globalst   create_parser(   R    R"   t
   drv_module(    (    s&   /usr/lib/python2.7/xml/sax/__init__.pyR   b   s    c         C   s"   t  |  i  i  d g  } | j   S(   NR&   (   t
   __import__R&   (   R    R'   (    (    s&   /usr/lib/python2.7/xml/sax/__init__.pyR   h   s    (   t   __doc__t	   xmlreaderR    R   R   R   t   _exceptionsR   R   R   R   R   R   R   R   t   _falset   xml.sax.expatreadert   xmlt   osR   t   flagst   ignore_environmentt   environt   splitt   _keyt   platformt   registryt   containsKeyt   getPropertyR   R   (    (    (    s&   /usr/lib/python2.7/xml/sax/__init__.pyt   <module>   s*   (	%	