B
    dh
                 @   s   d dl mZmZmZ yd dlm  mZ W n ek
rB   dZ	Y nX ej
dddZ	d dlmZ ddd	Zd
d ZdddZdddZdddZdddZdddZe	dk	rd dlT neZeZeZeZeZG dd deZdS )    )absolute_importdivisionprint_functionN	fable_extT)optional)rangec             C   s<   |}x&||k r*| | }|  s P |d7 }qW ||kr8dS |S )N   r   )isdigit)codestartstopic r   m/mnt/filia/a/genomebrowser/www/genomebrowser/fleming/tools/molprobity/modules/cctbx_project/fable/__init__.py"py_fem_utils_unsigned_integer_scan   s    
  r   c             C   s$   t | }|dk r|S ||ks t|S )Nr   )lenAssertionError)r   r   Zlen_coder   r   r   py_ext_get_code_stop   s
     r   c             C   s   t | |t| |dS )N)r   r   r   )r   r   )r   r   r   r   r   r   py_unsigned_integer_scan   s    r   c             C   sJ   t | |d}|}||k rF| | }|dks0|dkr8|d7 }t| ||dS dS )N)r   r   +-r	   )r   r   r   r   )r   r   )r   r   r   	code_stopr   r   r   r   r   *py_floating_point_scan_after_exponent_char!   s    r   c             C   s\   t | |d}t| ||d}|dk r&|}||k rX| | }|dksF|dkrXt| |d |dS |S )N)r   r   )r   r   r   r   edr	   )r   r   r   )r   r   r   r   r   r   r   r   r    py_floating_point_scan_after_dot,   s     r   c             C   s   t | |d}|}||k r| | }|d7 }|dk s8|dkrD|dkrDdS xL||k r| | }|d7 }|dk sn|dkrF|dk s~|dkrF|dkrF|d S qFW |S dS )	N)r   r   r	   az_r   09)r   )r   r   r   r   r   r   r   r   r   py_identifier_scan8   s      
  r#   c             C   s^   t | |d}d}xHt||D ]:}| | }|dkrF|dkr<|S |d8 }q|dkr|d7 }qW dS )N)r   r   r   )r	   (r   )r   r   )r   r   r   r   Zn_innerr   r   r   r   r   py_find_closing_parenthesisE   s     
r&   )*c               @   s   e Zd ZdS )SemanticErrorN)__name__
__module____qualname__r   r   r   r   r(   [   s    r(   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )
__future__r   r   r   boost_adaptbx.boost.pythonboostpythonbp	ExceptionextZ
import_ext	six.movesr   r   r   r   r   r   r#   r&   r   Zunsigned_integer_scanZ'floating_point_scan_after_exponent_charZfloating_point_scan_after_dotZidentifier_scanZfind_closing_parenthesisr(   r   r   r   r   <module>   s*   








