
    *Vhv                     @    d Z ddZd Z G d d      Z G d de      Zy)	z
    pygments.filter
    ~~~~~~~~~~~~~~~

    Module that implements the default filter.

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
Nc                 2    fd}|D ]  } |||       }  | S )z
    Use this method to apply an iterable of filters to
    a stream. If lexer is given it's forwarded to the
    filter, otherwise the filter receives `None`.
    c              3   F   K   | j                  |      E d {    y 7 wN)filter)filter_streamlexers     ?/home/dcms/DCMS/lib/python3.12/site-packages/pygments/filter.py_applyzapply_filters.<locals>._apply   s     >>%000s   !! )r   filtersr   r
   r   s     `  r	   apply_filtersr      s(    1 )()M    c                 j    t        | j                  t        ft        | d      | j                  | d      S )z
    Decorator that converts a function into a filter::

        @simplefilter
        def lowercase(self, lexer, stream, options):
            for ttype, value in stream:
                yield ttype, value.lower()
    
__module__)r   __doc__function)type__name__FunctionFiltergetattrr   )fs    r	   simplefilterr      s5     

^-a.990  r   c                       e Zd ZdZd Zd Zy)Filterzl
    Default filter. Subclass this class or use the `simplefilter`
    decorator to create own filters.
    c                     || _         y r   )optionsselfr   s     r	   __init__zFilter.__init__/   s	    r   c                     t               r   )NotImplementedErrorr   r   r   s      r	   r   zFilter.filter2   s    !##r   N)r   r   __qualname__r   r   r   r   r   r	   r   r   )   s    
$r   r   c                        e Zd ZdZdZd Zd Zy)r   z
    Abstract class used by `simplefilter` to create simple
    function filters on the fly. The `simplefilter` decorator
    automatically creates subclasses of this class for
    functions passed to it.
    Nc                     t        | d      s"t        | j                  j                  d      t	        j
                  | fi | y )Nr   z used without bound function)hasattr	TypeError	__class__r   r   r   r   s     r	   r   zFunctionFilter.__init__?   s;    tZ(t~~6699UVWW((r   c              #   Z   K   | j                  ||| j                        E d {    y 7 wr   )r   r   r"   s      r	   r   zFunctionFilter.filterD   s      =====s   !+)+)r   r   r#   r   r   r   r   r   r   r	   r   r   6   s     H)
>r   r   r   )r   r   r   r   r   r   r   r	   <module>r*      s*   
 
$ 
$>V >r   