File: //usr/lib/python3/dist-packages/genshi/template/__pycache__/base.cpython-310.pyc
o
    !�b�^  �                   @   s.  d Z ddlmZ ddlZddlZddlmZmZmZ ddl	m
Z
mZmZm
Z
mZmZ ddlmZ g d�ZdZG d	d
� d
e�ZG dd� de�ZG d
d� de�ZG dd� de�ZG dd� de�Zdd� Zddd�Zddd�ZG dd� de�Ze� e�G dd� de��Z!G dd� de!�Z"e"j#Z#e"j$Z$e"j%Z%e"j&Z&dS ) zBasic templating functionality.�    )�dequeN)�
numeric_types�StringIO�BytesIO)�Attrs�Stream�StreamEventKind�START�TEXT�_ensure)�
ParseError)�Context�DirectiveFactory�Template�
TemplateError�TemplateRuntimeError�TemplateSyntaxError�BadDirectiveErrorzrestructuredtext enc                   @   �   e Zd ZdZddd�ZdS )r   z?Base exception class for errors related to template processing.N���c                 C   sT   |du rd}|| _ |dks|dkrd| j ||f }t�| |� || _|| _|| _dS )a9  Create the exception.
        
        :param message: the error message
        :param filename: the filename of the template
        :param lineno: the number of line in the template at which the error
                       occurred
        :param offset: the column number at which the error occurred
        Nz<string>r   z%s (%s, line %d))�msg�	Exception�__init__�filename�lineno�offset��self�messager   r   r   � r   �6/usr/lib/python3/dist-packages/genshi/template/base.pyr   !   s   	
zTemplateError.__init__�Nr   r   ��__name__�
__module__�__qualname__�__doc__r   r   r   r   r    r      s    r   c                   @   r   )r   z|Exception raised when an expression in a template causes a Python syntax
    error, or the template is not well-formed.
    Nr   c                 C   s>