3
`]                 @   sH   d dl Zd dlZd dlZd dlZd dlZG dd dZG dd dZdS )    Nc               @   s   e Zd Zdg di fddZdS )QuirkN c             C   s(   || _ || _|| _i jtjjd| _d S )Nr   )idhandler	x_snippetfromkeysQuirksZ	quirkinfoZdmi_keys
match_tags)selfr   r   r   r	    r   4/usr/lib/python3/dist-packages/Quirks/quirkreader.py__init__   s    zQuirk.__init__)__name__
__module____qualname__r   r   r   r   r   r      s   r   c               @   s   e Zd ZdddZdd ZdS )	ReadQuirkNc             C   s  || _ | j }|d krg }n2t|dsDt|ddd}|j }|j  n|j }d}d}d}d}g | _d}	xb|D ]X}
|
j jdrqn|r|r|
j j jdrd}qnn| j|	  j	|
7  _	q| o|
j j jd	rd
}d	}|
|
j j
|t| d  j jdd}|| j|	 _~q| r|
j j jdrd
}d}|
|
j j
|t| d  j jdd}|jd}|| j|	 _~q|
j j jdr*d}|
|
j j
|t| d  j jd}d}d}g }xL|D ]D}|j r|s|j }n$|j }|jd}|| j|	 j|< P qW ~~~nd|
j j jdrRd
}d| j|	 _	qnn<|
j j jdrd}| j|	 js| jj|	 n|	d7 }	qn|
j j jdrnd|
j krnd
}t }| jj| ~qnqnW d S )Nwriterzutf-8)encodingFr   #ZendxorgsnippetZ
identifierT"r   r   |matchZxorgsnippetZ
endsection   ZsectionZquirk)sourcehasattropen	readlinesclose_quirksstrip
startswithlowerr   rfindlenreplacer   splitr   r	   popr   append)r
   r   fileZ
lines_listZmyfileZinside_quirkZhas_idZhas_handlerZinside_x_snippetitlineZtemp_strr   r   Zhandlers_listZ	temp_bitsZ	tag_matchZ	tag_valueZ
tag_valueselemZ
temp_quirkr   r   r   r   &   s    







zReadQuirk.__init__c             C   s   | j S )N)r   )r
   r   r   r   
get_quirks   s    zReadQuirk.get_quirks)N)r   r   r   r   r-   r   r   r   r   r   $   s   
]r   )	Zxkit.xutilsZxkitZxkit.xorgparserZQuirks.quirkinfor   Ztempfileosr   r   r   r   r   r   <module>   s   