
    0c                     (    d dl Z  G d d          ZdS )    Nc                   8    e Zd Zd Zd Zd Zd Zd Zd Zd Z	dS )	Rexerc                    t          |          j        }|                                  i | _        |dk    r2|| _        | j        j        j        | _        |                                  n@|dk    r:i | _        | j        D ])}t          j
        | j        |                   | j        |<   *d S | j        D ])}t          j
        | j        |                   | j        |<   *d S )NErimpAbovo)type__name__set_for_constantsrseabovo	constantsset_the_othersssrecompile)selfargargtypess       !/home/ernad/ernad/python/rexer.py__init__zRexer.__init__   s    s))$   gDF!V\3DN!!!!DGW 4 4Z
33

4 	0 	0ADGAJ//DGAJJ	0 	0    c                 R    i | _         d| j         d<   | j         dxx         dz  cc<   d S )Nz&\s{2}<variable name="([^"]+)" select="is_constants_linez'([^"]+)'"/>)r   )r   s    r   r
   zRexer.set_for_constants   s<    'P#$#$$$(EE$$$$$r   c                    d}d}i }d|z   dz   |d<   d|d<   |d         dz   |d         z   |d	<   d|z   dz   |d
<   d|d<   t          j        | j        d                   |d<   |d         t          j        d          z   |d<   d|z   dz   |z   |d         z   dz   |d<   d|z   dz   |z   |d         z   dz   |d<   d|d<   |dxx         dz  cc<   || _        d S )Nz\d{4}-\d{2}-\d{2}z[a-z0-9]{6}^$is_datez(\d{4}-\d{2}-\d{2})has_date_has_double_dateis_shotiz^[a-z]{3,4}-[a-z0-9]+$
is_repcodeext_amfamf_extz.gz
amf_ext_gzis_rif	is_rif_gzz(\s*<variable\s+name="([^"]+)"\s+select="	conf_linez'([^']+)'"/>\s*$|)r   escaper   r   )r   date_reshoti_rer   s       r   r   zRexer.set_the_others   s   ( g+91: ": 4n!x#-:3<	$.";<<9i=29U+;+;;<W}s*X59EK8-#-8|"#;G;
;44r   c                 T    | j                             | j        d                   rdS dS )Nr   TF)r   matchr   r   strings     r   r   zRexer.is_date/   s)    7==+,, 	4ur   c                 `    d| j         vrdS | j         d                             |          rdS dS )Nr$   FTr   r/   r0   s     r   r$   zRexer.is_repcode4   s;    tw&&57< &&v.. 	4ur   c                     | j         d                             |          rdS | j         d                             |          rdS dS )Nr)   Tr(   Fr3   r0   s     r   r(   zRexer.is_rif;   sK    7;%%f-- 	478""6** 	4ur   c                 R    | j         d                             |          }|d         S )Nr    r   )r   search)r   r1   matchess      r   get_issuedatezRexer.get_issuedateB   s&    '*%,,V44qzr   N)
r	   
__module____qualname__r   r
   r   r   r$   r(   r8    r   r   r   r      s        0 0 0"F F F
  (  
        r   r   )r   r   r;   r   r   <module>r<      sJ    				A A A A A A A A A Ar   