HEX
Server: Apache
System: Linux nc-ph-4101.simplemoneygoals.com 5.14.0-503.21.1.el9_5.x86_64 #1 SMP PREEMPT_DYNAMIC Sun Jan 12 09:45:05 EST 2025 x86_64
User: dailygoldindex (1004)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //lib/python3.9/site-packages/tuned/profiles/__pycache__/variables.cpython-39.pyc
a

,�g	�@shddlZddlZddlZddlmZddlmZddlm	Z	ddl
mZmZej
��ZGdd�d�ZdS)�N)�	functions)�commands)�ConfigParser�Errorc@sXeZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�ZdS)�	Variablesz8
	Storage and processing of variables used in profiles
	cCs"t�|_i|_i|_t��|_dS�N)r�_cmd�
_lookup_re�_lookup_envrZ
Repository�
_functions��self�r�</usr/lib/python3.9/site-packages/tuned/profiles/variables.py�__init__szVariables.__init__cCs|�|�dkr|S||S)Nr)�find)r
�s�prefixrrr�_add_env_prefixszVariables._add_env_prefixcCst�d|�S)Nz\w+$)�re�match)r
�variablerrr�
_check_varszVariables._check_varcCsj|durdSt|�}|�|�s0t�d|�dS|�|�}||jdt�|�d<||j|�	|t
j�<dS)Nz6variable definition '%s' contains unallowed charactersz
(?<!\\)\${�})�strr�log�error�expandr	r�escaper
r�constsZ
ENV_PREFIX)r
r�valuer�vrrr�add_variables

zVariables.add_variablec
Cs�tj�|�st�d|�dSz`tddddd�}t|_t|��.}|�	dt
jd|��|�Wd�n1sr0YWn"t
y�t�d	|�YdS0|��D],}|�|�D]}|�||j||dd
��q�q�dS)Nz#unable to find variables_file: '%s'�=�#TF)Z
delimitersZinline_comment_prefixesZallow_no_value�strict�[z]
z"error parsing variables_file: '%s')�raw)�os�path�existsrrrrZoptionxform�openZread_stringrZMAGIC_HEADER_NAME�readrZsections�optionsr"�get)r
�filenameZconfig�fr�orrr�
add_from_file+s
@zVariables.add_from_filecCsB|D]8}t|�dkr,|�tj�||��q|�|||�qdS)NZinclude)rr2r(r)�normpathr")r
Zcfg�itemrrr�add_from_cfg;szVariables.add_from_cfgcCst�dd|j�|j|��S)Nz\\(\${\w+})z\1)r�subrZmultiple_re_replacer	)r
r rrr�
expand_staticCszVariables.expand_staticcCs&|durdS|�t|��}|j�|�Sr)r7rrr)r
r rrrrrFszVariables.expandcCs|jSr)r
rrrr�get_envNszVariables.get_envN)
�__name__�
__module__�__qualname__�__doc__rrrr"r2r5r7rr8rrrrrs
r)r(rZ
tuned.logsZtunedZtuned.constsrZtuned.profilesrZtuned.utils.commandsrZtuned.utils.config_parserrrZlogsr.rrrrrr�<module>s