o
    + i                     @   sn   d dl Z d dlZd dlZd dlZd dlmZ d dlmZmZ dddZdd Z	dd	 Z
dd
dZdddZdS )    N)pir)CompiledProgramVariablec              	   C   sv   |d u rg n|}|d u rg n|}|D ]&}||v r&t d| d|  d| d||vr8t d|  d| d| dqd S )Nz
argument 'z' in function 'z' is deprecated, only z are supported.z
function 'z' doesn't support argument 'z	',
 only )
ValueError)ZcallerargsZsupported_argsZdeprecated_argsarg r   b/home/app/PaddleOCR-VL-test/.venv_paddleocr/lib/python3.10/site-packages/paddle/static/io_utils.py_check_args   s   r
   c                 C   s6   t |ts|g}tdd |D std|  dd S )Nc                 s   s     | ]}t |ttjfV  qd S N)
isinstancer   r   Value).0varr   r   r	   	<genexpr>,   s    z_check_vars.<locals>.<genexpr>'z-' should be a Variable or a list of Variable.)r   listallr   )nameZvar_listr   r   r	   _check_vars)   s   

r   c                 C   s@   t | ts	td| drtdtj| } tj| } | S )z/
    convert path_prefix to absolute path.
    z!'path_prefix' should be a string./z''path_prefix' should not be a directory)r   strr   endswithospathnormpathabspath)Zpath_prefixr   r   r	   _normalize_path_prefix2   s   

r   c                 C   sb   | du r
t j } nt| tr| j} | du rtdtd t| t jj	s/tdt
|  | S )z9
    return default main program if program is None.
    NzQThe type of input program is invalid, expected type is Program, but received Nonez8The input is a CompiledProgram, this is not recommended.zRThe type of input program is invalid, expected type is base.Program, but received )paddleZstaticZdefault_main_programr   r   Z_program	TypeErrorwarningswarnZProgramtype)programr   r   r	   _get_valid_program?   s    
r$   ASCIIc                 C   s   t j| |d }|S )N)encoding)pickle	Unpicklerload)filer&   	load_dictr   r   r	   _safe_load_pickleU   s   r,   )NNr   )r%   )r   r'   r    r   r   Zpaddle.baser   r   r
   r   r   r$   r,   r   r   r   r	   <module>   s   
	
