o
    .j                     @   s\   d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 G dd de
eZdgZd	S )
z*SKIP value type of RECUR from :rfc:`7529`.    )Any)Self)Enum)JCalParsingError)vTextc                   @   s@   e Zd ZdZdZdZdZejZdd Z	e
dedefd	d
ZdS )vSkipaK  Skip values for RRULE.

    These are defined in :rfc:`7529`.

    OMIT  is the default value.

    Examples:

    .. code-block:: pycon

        >>> from icalendar import vSkip
        >>> vSkip.OMIT
        vSkip('OMIT')
        >>> vSkip.FORWARD
        vSkip('FORWARD')
        >>> vSkip.BACKWARD
        vSkip('BACKWARD')
    OMITFORWARDBACKWARDc                 C   s   | j j d| jdS )N())	__class____name___name_)self r   N/home/thesage/.local/lib/python3.10/site-packages/icalendar/prop/recur/skip.py__repr__%   s   zvSkip.__repr__valuereturnc              
   C   sF   t |t|  z| |  W S  ty" } zt d| |d|d}~ww )zParse a jCal value for vSkip.

        Raises:
            ~error.JCalParsingError: If the value is not a valid skip value.
        z%The value must be a valid skip value.)r   N)r   validate_value_typestrupperKeyError)clsr   er   r   r   parse_jcal_value(   s   zvSkip.parse_jcal_valueN)r   
__module____qualname____doc__r   r	   r
   r   __reduce_ex__r   classmethodr   r   r   r   r   r   r   r      s    r   N)r   typingr   icalendar.compatibilityr   icalendar.enumsr   icalendar.errorr   icalendar.prop.textr   r   __all__r   r   r   r   <module>   s    
-