관리-도구
편집 파일: nodes.cpython-311.pyc
� P�Dgn< � �: � d Z dZddlmZ ddlZddlZddlZddlZ G d� d� � Z G d� de � � Z d � Z�d\d�Z G d� d ee � � Z G d� de� � Z G d� de� � Z G d� de� � Z G d� d� � Z G d� d� � Z G d� d� � Z G d� d� � Z G d� d� � Z G d� d� � Z G d � d!e� � Z G d"� d#� � Z G d$� d%� � Z G d&� d'e� � Z G d(� d)e� � Z G d*� d+e� � Z G d,� d-e� � Z G d.� d/e� � Z G d0� d1� � Z G d2� d3� � Z G d4� d5e� � Z! G d6� d7e� � Z" G d8� d9� � Z# G d:� d;eee� � Z$ G d<� d=eee� � Z% G d>� d?eee� � Z& G d@� dAee� � Z' G dB� dCee� � Z( G dD� dEee� � Z) G dF� dGee� � Z* G dH� dIee� � Z+ G dJ� dKee� � Z, G dL� dMee� � Z- G dN� dOee� � Z. G dP� dQee� � Z/ G dR� dSee� � Z0 G dT� dUee� � Z1 G dV� dWee� � Z2 G dX� dYee� � Z3 G dZ� d[ee� � Z4 G d\� d]ee� � Z5 G d^� d_ee� � Z6 G d`� daee� � Z7 G db� dcee� � Z8 G dd� deee� � Z9 G df� dgee� � Z: G dh� diee� � Z; G dj� dkee� � Z< G dl� dmee� � Z= G dn� doee� � Z> G dp� dqee� � Z? G dr� dsee� � Z@ G dt� duee� � ZA G dv� dwee� � ZB G dx� dyee� � ZC G dz� d{ee� � ZD G d|� d}ee� � ZE G d~� dee� � ZF G d�� d�ee� � ZG G d�� d�ee� � ZH G d�� d�ee� � ZI G d�� d�ee� � ZJ G d�� d�ee� � ZK G d�� d�ee� � ZL G d�� d�ee� � ZM G d�� d�ee� � ZN G d�� d�ee� � ZO G d�� d�ee� � ZP G d�� d�ee� � ZQ G d�� d�ee� � ZR G d�� d�ee� � ZS G d�� d�ee� � ZT G d�� d�ee� � ZU G d�� d�ee� � ZV G d�� d�ee� � ZW G d�� d�ee� � ZX G d�� d�ee� � ZY G d�� d�ee� � ZZ G d�� d�ee� � Z[ G d�� d�ee� � Z\ G d�� d�ee� � Z] G d�� d�ee� � Z^ G d�� d�ee� � Z_ G d�� d�ee� � Z` G d�� d�ee� � Za G d�� d�eee� � Zb G d�� d�eee� � Zc G d�� d�eee ee"� � Zd G d�� d�eeee#e"� � Ze G d�� d�eeee#e"� � Zf G d�� d�ee� � Zg G d d�ee� � Zh G dĄ d�ee� � Zi G dƄ d�ee� � Zj G dȄ d�ee� � Zk G dʄ d�ee� � Zl G d̄ d�ee� � Zm G d΄ d�ee� � Zn G dЄ d�ee� � Zo G d҄ d�ee� � Zp G dԄ d�ee� � Zq G dք d�eeee� � Zr G d d�eee� � Zs G dڄ d�ee ee� � Zt G d܄ d�e e� � Zu G dބ d�e e� � Zv G d� d�e e� � Zw G d� d�ee e!e� � Zx G d� d�e e!e� � Zy G d� d�e e!e� � Zz G d� d�e e� � Z{ G d� d�e e� � Z| G d� d�e e� � Z} G d� d�e e� � Z~ G d� d�e e� � Z G d� d�e e� � Z� G d� d�e e� � Z� G d�� d�ee e� � Z� G d�� d�e e� � Z� G d�� d�e e� � Z� G d�� d�e e� � Z�d��� � � Z� G d�� �d � � Z� G �d� �de�� � Z� G �d� �de�� � Z��d� Z��d� Z��d� Z��d� Z� e�e�� � G �d � �d e�� � Z� G �d� �de�� � Z� G �d � �de�� � Z� G �d� �de�� � Z� G �d� �de�� � Z� G �d� �de�� � Z� G �d� �de�� � Z� G �d� �de�� � Z��d� Z� ej� �d� � Z� ej� �d� � Z�i �d�d��d�d��d �d!��d"�d#��d$�d%��d&�d'��d(�d)��d*�d)��d+�d,��d-�d��d.�d/��d0�d1��d2�d%��d3�d4��d5�d6��d7�d'��d8�d'�i �d9�d:��d;�d<��d=�d>��d?�d<��d@�d%��dA�d4��dB�d'��dC�dD��dE�d,��dF�dG��dH�d<��dI�dJ��dK�dD��dL�dM��dN�dO��dP�d:��Z��dQ�dR�dS�dT�dU�dV�Z��dW� Z��dX� Z��dY� Z��dZ� Z��d[� Z�dS (] a� Docutils document tree element class library. Classes in CamelCase are abstract base classes or auxiliary classes. The one exception is `Text`, for a text (PCDATA) node; uppercase is used to differentiate from element classes. Classes in lower_case_with_underscores are element classes, matching the XML element generic identifiers in the DTD_. The position of each node (the level at which it can occur) is significant and is represented by abstract base classes (`Root`, `Structural`, `Body`, `Inline`, etc.). Certain transformations will be easier because we can use ``isinstance(node, base_class)`` to determine the position of the node in the hierarchy. .. _DTD: https://docutils.sourceforge.io/docs/ref/docutils.dtd �reStructuredText� )�CounterNc �� � e Zd ZdZdZ dZ dZ dZed� � � Z e j d� � � Z d� Zdd�Zdd �Z d � Zd� Zd� Zd � Zd� Zd� Zd� Zd� Z dd�Z dd�Z dd�ZdS )�Nodez0Abstract base class of nodes in a document tree.Nc �L � | j p| j j S # t $ r Y dS w xY w)zJReturn the `document` root node of the tree containing this Node. N)� _document�parent�document�AttributeError��selfs �n/builddir/build/BUILD/imunify360-venv-2.4.0/opt/imunify360/venv/lib/python3.11/site-packages/docutils/nodes.pyr z Node.document6 s; � � ��>�9�T�[�%9�9��� � � ��4�4� ���s � � #�#c � � || _ d S �N)r )r �values r r z Node.document? s � ������ c � � dS )a Node instances are always true, even if they're empty. A node is more than a simple container. Its boolean "truth" does not depend on having one or more subnodes in the doctree. Use `len()` to check node length. T� r s r �__bool__z Node.__bool__C s � � �tr c �j � |� ddl mc m} |� � � }| � |� � S )z6Return a DOM **fragment** representation of this Node.Nr )�xml.dom.minidom�dom�minidom�Document� _dom_node�r r �domroots r �asdomz Node.asdomM sA � ��;�)�)�)�)�)�)�)�)�)��,�,�.�.���~�~�g�&�&�&r � r c � � t �)zs Return an indented pseudo-XML representation, for test purposes. Override in subclasses. ��NotImplementedError)r �indent�levels r �pformatzNode.pformatT s � � "�!r c � � t �)zReturn a copy of self.r! r s r �copyz Node.copy\ � � �!�!r c � � t �)z3Return a deep copy of self (also copying children).r! r s r �deepcopyz Node.deepcopy` r( r c � � t �)z,Return a string representation of this Node.r! r s r �astextzNode.astextd r( r c � � | |_ | j r>| j |_ |j �| j j |_ |j �| j j |_ d S d S d S r )r r �source�current_source�line�current_line�r �childs r �setup_childzNode.setup_childh sZ � �����=� 8�!�]�E�N��|�#�#�}�;����z�!�!�]�7�� � � � 8� 8� "�!r c �~ � d}|j j � d| j j z � � |� | � � n$# t t f$ r |cY S t $ r Y nw xY w| j } |dd� D ]}|� |� � rd} n�n# t $ r Y nw xY wn# t $ r d}Y nw xY w|S )a� Traverse a tree of `Node` objects, calling the `dispatch_visit()` method of `visitor` when entering each node. (The `walkabout()` method is similar, except it also calls the `dispatch_departure()` method before exiting each node.) This tree traversal supports limited in-place tree modifications. Replacing one node with one or more nodes is OK, as is removing an element. However, if the node removed or replaced occurs after the current node, the old node will still be traversed, and any new nodes will not. Within ``visit`` methods (and ``depart`` methods for `walkabout()`), `TreePruningException` subclasses may be raised (`SkipChildren`, `SkipSiblings`, `SkipNode`, `SkipDeparture`). Parameter `visitor`: A `NodeVisitor` object, containing a ``visit`` implementation for each `Node` subclass encountered. Return true if we should stop the traversal. Fz6docutils.nodes.Node.walk calling dispatch_visit for %sNT) r �reporter�debug� __class__�__name__�dispatch_visit�SkipChildren�SkipNode� SkipDeparture�children�walk�SkipSiblings� StopTraversal)r �visitor�stopr>