
    k7i                         S r SSKrSSKJr  SSKJr  SSKJr  \\/\4   rS\S\4S	 jr	S\S\4S
 jr
S\S\4S jr " S S5      r " S S5      rg)zA
.. codeauthor:: Tsuyoshi Hombashi <tsuyoshi.hombashi@gmail.com>
    N)datetime)Callable   )ValidationErrorereturnc                 :    [         R                  " S[        5        g)Null value handler that always returns an empty string.

Args:
    e (ValidationError): A validation error.

Returns:
    str: An empty string.
zV'return_null_string' is deprecated. Use 'NullValueHandler.return_null_string' instead. )warningswarnDeprecationWarningr   s    N/home/james-whalen/.local/lib/python3.13/site-packages/pathvalidate/handler.pyreturn_null_stringr      s     MM`
     c                     [         R                  " S[        5        [        [        R
                  " 5       R                  5       5      $ )Null value handler that returns a timestamp of when the function was called.

Args:
    e (ValidationError): A validation error.

Returns:
    str: A timestamp.
zW'return_timestamp' is deprecated. Use 'NullValueHandler.reserved_name_handler' instead.)r   r   r   strr   now	timestampr   s    r   return_timestampr   !   s2     MMa
 x||~'')**r   c                     U e)zNull value handler that always raises an exception.

Args:
    e (ValidationError): A validation error.

Raises:
    ValidationError: Always raised.
 r   s    r   raise_errorr   3   s	     Gr   c                   L    \ rS rSr\S\S\4S j5       r\S\S\4S j5       rSr	g)NullValueHandler@   r   r   c                     g)r
   r   r   clsr   s     r   r   #NullValueHandler.return_null_stringA   s     r   c                 Z    [        [        R                  " 5       R                  5       5      $ )r   )r   r   r   r   r    s     r   r   !NullValueHandler.return_timestampN   s     8<<>++-..r   r   N)
__name__
__module____qualname____firstlineno__classmethodr   r   r   r   __static_attributes__r   r   r   r   r   @   sD    
? 
s 
 
 
/ 
/S 
/ 
/r   r   c                   h    \ rS rSr\S\S\4S j5       r\S\S\4S j5       r\S\S\4S j5       r	Sr
g)	ReservedNameHandler\   r   r   c                 z    UR                   S;   d  UR                  (       a  UR                   $ SUR                    3$ )zReserved name handler that adds a leading underscore (``"_"``) to the name
except for ``"."`` and ``".."``.

Args:
    e (ValidationError): A reserved name error.

Returns:
    str: The converted name.
.z.._reserved_namereusable_namer    s     r   add_leading_underscore*ReservedNameHandler.add_leading_underscore]   s2     ??k)Q__??"1??#$$r   c                 z    UR                   S;   d  UR                  (       a  UR                   $ UR                    S3$ )zReserved name handler that adds a trailing underscore (``"_"``) to the name
except for ``"."`` and ``".."``.

Args:
    e (ValidationError): A reserved name error.

Returns:
    str: The converted name.
r/   r1   r2   r    s     r   add_trailing_underscore+ReservedNameHandler.add_trailing_underscoren   s2     ??k)Q__??"//"!$$r   c                     UR                   $ )zReserved name handler that returns the name as is.

Args:
    e (ValidationError): A reserved name error.

Returns:
    str: The name as is.
)r3   r    s     r   as_isReservedNameHandler.as_is   s     r   r   N)r%   r&   r'   r(   r)   r   r   r5   r8   r;   r*   r   r   r   r,   r,   \   sf    % %3 % %  % %C % %  
o 
# 
 
r   r,   )__doc__r   r   typingr   errorr   r   ValidationErrorHandlerr   r   r   r   r,   r   r   r   <module>rA      sz       " "?"3S"89 / c $+ +C +$
? 
s 
/ /8. .r   