î
)Ú X	  ã               @   s7   d  d l  m Z d  d l m Z Gd d „  d ƒ Z d S)é   )ÚeStart)Úwrap_ordc               @   sL   e  Z d  Z d d „  Z d d „  Z d d „  Z d d „  Z d	 d
 „  Z d S)ÚCodingStateMachinec             C   s)   | |  _  d |  _ d |  _ |  j ƒ  d  S)Né    )Ú_mModelÚ_mCurrentBytePosÚ_mCurrentCharLenÚreset)ÚselfÚsm© r   ú\/home/ubuntu/projects/ifolica/build/requests/requests/packages/chardet/codingstatemachine.pyÚ__init__!   s    			zCodingStateMachine.__init__c             C   s   t  |  _ d  S)N)r   Ú_mCurrentState)r
   r   r   r   r	   '   s    zCodingStateMachine.resetc             C   sˆ   |  j  d t | ƒ } |  j t k rF d |  _ |  j  d | |  _ n  |  j |  j  d | } |  j  d | |  _ |  j d 7_ |  j S)NZ
classTabler   ZcharLenTableZclassFactorZ
stateTabler   )r   r   r   r   r   r   )r
   ÚcZbyteClsZ
curr_stater   r   r   Ú
next_state*   s    	zCodingStateMachine.next_statec             C   s   |  j  S)N)r   )r
   r   r   r   Úget_current_charlen9   s    z&CodingStateMachine.get_current_charlenc             C   s   |  j  d S)NÚname)r   )r
   r   r   r   Úget_coding_state_machine<   s    z+CodingStateMachine.get_coding_state_machineN)Ú__name__Ú
__module__Ú__qualname__r   r	   r   r   r   r   r   r   r   r       s
   r   N)Ú	constantsr   Úcompatr   r   r   r   r   r   Ú<module>   s   