o
    QDi                     @  sz   d dl mZ d dlmZmZ d dlZddlmZ ddlm	Z	 er,ddl
mZ ddlmZ ejd	d
dG dd de	ZdS )    )annotations)TYPE_CHECKINGIterableN   )errors)Check)Error)RowTF)kw_onlyreprc                   @  s&   e Zd ZdZdZejgZd
ddZd	S )ascii_valuezCheck whether all the string characters in the data are ASCII

    This check can be enabled using the `checks` parameter
    for the `validate` function.

    zascii-valuerowr	   returnIterable[Error]c                 c  sL    |j D ]}|jdkr#||j }|r#| s#d}tjj|||jdV  qd S )Nstringz&the cell contains non-ascii characters)note
field_name)fieldstypenameisasciir   AsciiValueErrorfrom_row)selfr   fieldcellr    r   ]/var/www/Datamplify/venv/lib/python3.10/site-packages/frictionless/checks/cell/ascii_value.pyvalidate_row   s   


zascii_value.validate_rowN)r   r	   r   r   )	__name__
__module____qualname____doc__r   r   r   Errorsr   r   r   r   r   r      s
    r   )
__future__r   typingr   r   attrs r   	checklistr   errorr   tabler	   definer   r   r   r   r   <module>   s    