HEX
Server: Apache/2.4.62 (Unix) OpenSSL/1.1.1k
System: Linux ns565604.ip-54-39-133.net 4.18.0-553.50.1.el8_10.x86_64 #1 SMP Tue Apr 15 08:09:22 EDT 2025 x86_64
User: greer489 (1034)
PHP: 8.3.19
Disabled: NONE
Upload Files
File: //lib/python3.6/site-packages/cloudinit/distros/parsers/__pycache__/sys_conf.cpython-36.pyc
3

\�me?�@sfddlZddlZddlmZddlZdZejde�ejd�ejd�gZdd�ZGd	d
�d
ej	�Z
dS)�N)�StringIOz[a-zA-Z_]+[a-zA-Z0-9_]*z\$z\$[0-9#\?\-@\*]z\$\{.+\}cCs xtD]}|j|�rdSqWdS)NTF)�SHELL_VAR_REGEXES�search)�text�r�r�/usr/lib/python3.6/sys_conf.py�_contains_shell_variable$s

r	c@s2eZdZdZdd�Zdd�Zddd�Zd	d
�ZdS)
�SysConfaA configobj.ConfigObj subclass specialised for sysconfig files.

    :param contents:
        The sysconfig file to parse, in a format accepted by
        ``configobj.ConfigObj.__init__`` (i.e. "a filename, file like object,
        or list of lines").
    cCstjj||ddd�dS)NFT)Z
interpolationZwrite_empty_values)�	configobj�	ConfigObj�__init__)�self�contentsrrrr
4szSysConf.__init__cCsD|j�}t�}t|ttf�r.|jdj|��n|jt|��|j�S)N�
)�writer�
isinstance�list�tuple�join�str�getvalue)rrZout_contentsrrr�__str__9szSysConf.__str__Fcs�t|t�std|��t|�dkr&dSd}|ddkr\|ddkr\t|�dkr��fdd�}n`|j�jd	�rz|j�jd
�rznBtjd|�r�t	|�r�tjd|�r��fd
d�}q��fdd�}nt
j}|s�|S||�S)NzValue "%s" is not a stringr��"�'�cs�j|�|S)N)�_get_single_quote)�x)rrr�<lambda>Ksz SysConf._quote.<locals>.<lambda>z$(�)z	[\t\r\n ]z[\n\"']cs�j|�|S)N)Z_get_triple_quote)r)rrrrYscs�j|�|S)N)r)r)rrrr]s)rr���)rr)rr�
ValueError�len�strip�
startswith�endswith�rerr	�shlexZquote)r�valueZ	multilineZ	quot_funcr)rr�_quoteBs&
zSysConf._quotecCs<|j|j|��}|j|j|��}|j|�}d||d||fS)Nz
%s%s%s%s%s�=)Z_decode_elementr*)rZ
indent_string�entryZ
this_entryZcomment�val�keyZcmntrrr�_write_linees
zSysConf._write_lineN)F)�__name__�
__module__�__qualname__�__doc__r
rr*r/rrrrr
+s
	
#r
)r'r(�iorrZSHELL_VAR_RULE�compilerr	rr
rrrr�<module>s