File: //opt/alt/python27/lib/python2.7/site-packages/svgwrite/validator2.pyc
�
x��Rc           @   s{   d  d l  m Z d  d l  m Z d  d l  m Z i  Z d �  Z e d � Z d e f d �  �  YZ	 d e	 f d	 �  �  YZ
 d
 S(   i����(   t   full11(   t   tiny12(   t   patternc         C   s   t  |  � t  | � S(   N(   t   str(   t   profilet   debug(    (    sD   /opt/alt/python27/lib/python2.7/site-packages/svgwrite/validator2.pyt	   cache_key   s    c         C   s�   y t  t |  | � SWnk t k
 r� |  d k r@ t | � } n+ |  d k r[ t | � } n t d |  � � | t  t |  | � <| SXd S(   s    Validator factory t   tinyt   fullt   basict   nones   Unsupported profile: '%s'N(   R   R	   R
   (   t   validator_cacheR   t   KeyErrort   Tiny12Validatort   Full11Validatort
   ValueError(   R   R   t	   validator(    (    sD   /opt/alt/python27/lib/python2.7/site-packages/svgwrite/validator2.pyt
   get_validator   s    
R
   c           B   s�   e  Z d  Z e d � Z d �  Z d �  Z d �  Z d �  Z d �  Z	 d d � Z
 d	 �  Z d
 �  Z d �  Z
 d �  Z d
 �  Z e Z RS(   s   Tiny 1.2c         C   s4   | |  _  t j |  _ t j |  _ t j �  |  _ d  S(   N(   R   R   t
   attributest   elementst   TypeCheckert   typechecker(   t   selfR   (    (    sD   /opt/alt/python27/lib/python2.7/site-packages/svgwrite/validator2.pyt   __init__%   s    	c         C   s4   x- | j  �  D] \ } } |  j | | | � q
 Wd S(   s�   
        Check if attributes are valid for object 'elementname' and all svg
        attributes have valid types and values.
        Raises ValueError.
        N(   t   itemst   check_svg_attribute_value(   R   t   elementnameR   t
   attributenamet   value(    (    sD   /opt/alt/python27/lib/python2.7/site-packages/svgwrite/validator2.pyt   check_all_svg_attribute_values+   s    c         C   s'