o
    èÅbí  ã                   @  s`   d dl mZ d dlZd dlmZmZ d dlmZ er d dlm	Z	 e 
d¡ZeG dd„ dƒƒZdS )	é    )ÚannotationsN)ÚTYPE_CHECKINGÚType)Údefine)ÚGenConverterz\r\n|\rc                   @  sV   e Zd ZU dZdZded< 	 ddd„Zdd	d
„Zddd„Zddd„Z	e
ddd„ƒZdS )ÚFeatureszoA data class representing UFO features.

    See http://unifiedfontobject.org/versions/ufo3/features.fea/.
    Ú ÚstrÚtextÚreturnÚboolc                 C  s
   t | jƒS ©N)r   r
   ©Úself© r   ú:/usr/lib/python3/dist-packages/ufoLib2/objects/features.pyÚ__bool__   s   
zFeatures.__bool__c                 C  s   | j S r   ©r
   r   r   r   r   Ú__str__   s   zFeatures.__str__c                 C  s   t  d| j¡| _| S )z*Normalize CRLF and CR newlines to just LF.Ú
)ÚRE_NEWLINESÚsubr
   r   r   r   r   Únormalize_newlines   s   zFeatures.normalize_newlinesÚ	converterr   c                 C  s   ~| j S r   r   )r   r   r   r   r   Ú_unstructure$   s   zFeatures._unstructureÚdataÚclsúType[Features]c                 C  s
   ~|| ƒS r   r   )r   r   r   r   r   r   Ú
_structure(   s   zFeatures._structureN)r   r   )r   r	   )r   r   )r   r   r   r	   )r   r	   r   r   r   r   r   r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r
   Ú__annotations__r   r   r   r   Ústaticmethodr   r   r   r   r   r      s   
 



r   )Z
__future__r   ÚreÚtypingr   r   Úattrr   Zcattrr   Úcompiler   r   r   r   r   r   Ú<module>   s    
