
    XiR!                        S SK r SSKJr  SSKJr  \" 5       S   r\" S \R                  S5      S    R                  S5       5       5      r	C\" 5       r " S	 S
\
\ R                  5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S \5      r " S! S"\5      rg)#    N   )get_versions)_NameManglerversionc              #   8   #    U  H  n[        U5      v   M     g 7fN)int).0ns     ;/app/.venv/lib/python3.13/site-packages/strenum/__init__.py	<genexpr>r      s     R)QAQ)Qs   +.c                   8   ^  \ rS rSrSrU 4S jrS rS rSrU =r	$ )StrEnum   a  
StrEnum is a Python ``enum.Enum`` that inherits from ``str``. The default
``auto()`` behavior uses the member name as its value.

Example usage::

    class Example(StrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "UPPER_CASE"
    assert Example.lower_case == "lower_case"
    assert Example.MixedCase == "MixedCase"
c                    > [        U[        [        R                  45      (       d  [	        SU< S[        U5       35      e[        TU ]  " X/UQ70 UD6$ )Nz$Values of StrEnums must be strings: z is a )
isinstancestrenumauto	TypeErrortypesuper__new__)clsvalueargskwargs	__class__s       r   r   StrEnum.__new__&   sU    %#tyy!1226uivd5k]S  ws;D;F;;    c                 ,    [        U R                  5      $ r   )r   r   )selfs    r   __str__StrEnum.__str__-   s    4::r"   c                     U $ r    name_s     r   _generate_next_value_StrEnum._generate_next_value_0   s    r"   r(   )
__name__
__module____qualname____firstlineno____doc__r   r%   r,   __static_attributes____classcell__)r    s   @r   r   r      s     < r"   r   c                       \ rS rSrSrS rSrg)LowercaseStrEnum4   a  
A ``StrEnum`` where ``auto()`` will convert the name to `lowercase` to
produce each member's value.

Example usage::

    class Example(LowercaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "upper_case"
    assert Example.lower_case == "lower_case"
    assert Example.MixedCase == "mixedcase"

.. versionadded:: 0.4.3
c                 "    U R                  5       $ r   )lowerr)   s     r   r,   &LowercaseStrEnum._generate_next_value_G       zz|r"   r(   Nr.   r/   r0   r1   r2   r,   r3   r(   r"   r   r6   r6   4       $r"   r6   c                       \ rS rSrSrS rSrg)UppercaseStrEnumK   a  
A ``StrEnum`` where ``auto()`` will convert the name to `UPPERCASE` to
produce each member's value.

Example usage::

    class Example(UppercaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "UPPER_CASE"
    assert Example.lower_case == "LOWER_CASE"
    assert Example.MixedCase == "MIXEDCASE"

.. versionadded:: 0.4.3
c                 "    U R                  5       $ r   )upperr)   s     r   r,   &UppercaseStrEnum._generate_next_value_^   r;   r"   r(   Nr<   r(   r"   r   r?   r?   K   r=   r"   r?   c                       \ rS rSrSrS rSrg)CamelCaseStrEnumb   a  
A ``StrEnum`` where ``auto()`` will convert the name to `camelCase` to
produce each member's value.

Example usage::

    class Example(CamelCaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "upperCase"
    assert Example.lower_case == "lowerCase"
    assert Example.MixedCase == "mixedCase"

.. versionadded:: 0.4.5
c                 ,    [         R                  U 5      $ r   )_name_manglercamelr)   s     r   r,   &CamelCaseStrEnum._generate_next_value_u       ""4((r"   r(   Nr<   r(   r"   r   rE   rE   b       $)r"   rE   c                       \ rS rSrSrS rSrg)PascalCaseStrEnumy   a  
A ``StrEnum`` where ``auto()`` will convert the name to `PascalCase` to
produce each member's value.

Example usage::

    class Example(PascalCaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "UpperCase"
    assert Example.lower_case == "LowerCase"
    assert Example.MixedCase == "MixedCase"

.. versionadded:: 0.4.5
c                 ,    [         R                  U 5      $ r   )rH   pascalr)   s     r   r,   'PascalCaseStrEnum._generate_next_value_   s    ##D))r"   r(   Nr<   r(   r"   r   rN   rN   y   s    $*r"   rN   c                       \ rS rSrSrS rSrg)KebabCaseStrEnum   a  
A ``StrEnum`` where ``auto()`` will convert the name to `kebab-case` to
produce each member's value.

Example usage::

    class Example(KebabCaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "upper-case"
    assert Example.lower_case == "lower-case"
    assert Example.MixedCase == "mixed-case"

.. versionadded:: 0.4.5
c                 ,    [         R                  U 5      $ r   )rH   kebabr)   s     r   r,   &KebabCaseStrEnum._generate_next_value_   rK   r"   r(   Nr<   r(   r"   r   rT   rT      rL   r"   rT   c                       \ rS rSrSrS rSrg)SnakeCaseStrEnum   a  
A ``StrEnum`` where ``auto()`` will convert the name to `snake_case` to
produce each member's value.

Example usage::

    class Example(SnakeCaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "upper_case"
    assert Example.lower_case == "lower_case"
    assert Example.MixedCase == "mixed_case"

.. versionadded:: 0.4.5
c                 ,    [         R                  U 5      $ r   )rH   snaker)   s     r   r,   &SnakeCaseStrEnum._generate_next_value_   rK   r"   r(   Nr<   r(   r"   r   rZ   rZ      rL   r"   rZ   c                       \ rS rSrSrS rSrg)MacroCaseStrEnum   a  
A ``StrEnum`` where ``auto()`` will convert the name to `MACRO_CASE` to
produce each member's value.

Example usage::

    class Example(MacroCaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "UPPER_CASE"
    assert Example.lower_case == "LOWER_CASE"
    assert Example.MixedCase == "MIXED_CASE"

.. versionadded:: 0.4.6
c                 ,    [         R                  U 5      $ r   )rH   macror)   s     r   r,   &MacroCaseStrEnum._generate_next_value_   rK   r"   r(   Nr<   r(   r"   r   r`   r`      rL   r"   r`   c                       \ rS rSrSrS rSrg)CamelSnakeCaseStrEnum   a  
A ``StrEnum`` where ``auto()`` will convert the name to `camel_Snake_Case` to
produce each member's value.

Example usage::

    class Example(CamelSnakeCaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "upper_Case"
    assert Example.lower_case == "lower_Case"
    assert Example.MixedCase == "mixed_Case"

.. versionadded:: 0.4.8
c                 ,    [         R                  U 5      $ r   )rH   camel_snaker)   s     r   r,   +CamelSnakeCaseStrEnum._generate_next_value_       ((..r"   r(   Nr<   r(   r"   r   rf   rf          $/r"   rf   c                       \ rS rSrSrS rSrg)PascalSnakeCaseStrEnum   a  
A ``StrEnum`` where ``auto()`` will convert the name to `Pascal_Snake_Case` to
produce each member's value.

Example usage::

    class Example(PascalSnakeCaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "Upper_Case"
    assert Example.lower_case == "Lower_Case"
    assert Example.MixedCase == "Mixed_Case"

.. versionadded:: 0.4.8
c                 ,    [         R                  U 5      $ r   )rH   pascal_snaker)   s     r   r,   ,PascalSnakeCaseStrEnum._generate_next_value_   s    ))$//r"   r(   Nr<   r(   r"   r   rn   rn      s    $0r"   rn   c                       \ rS rSrSrS rSrg)SpongebobCaseStrEnumi  a  
A ``StrEnum`` where ``auto()`` will convert the name to `SpONGEBob_CAse` to
produce each member's value.

Example usage::

    class Example(SpongebobCaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "uPpER_cAsE"
    assert Example.lower_case == "lowER_CASe"
    assert Example.MixedCase == "MixeD_CAse"

.. versionadded:: 0.4.8
c                 ,    [         R                  U 5      $ r   )rH   	spongebobr)   s     r   r,   *SpongebobCaseStrEnum._generate_next_value_  s    &&t,,r"   r(   Nr<   r(   r"   r   rt   rt     s    $-r"   rt   c                       \ rS rSrSrS rSrg)CobolCaseStrEnumi  a  
A ``StrEnum`` where ``auto()`` will convert the name to `COBOL-CASE` to
produce each member's value.

Example usage::

    class Example(CobolCaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "UPPER-CASE"
    assert Example.lower_case == "LOWER-CASE"
    assert Example.MixedCase == "MIXED-CASE"

.. versionadded:: 0.4.8
c                 ,    [         R                  U 5      $ r   )rH   cobolr)   s     r   r,   &CobolCaseStrEnum._generate_next_value_-  rK   r"   r(   Nr<   r(   r"   r   ry   ry     rL   r"   ry   c                       \ rS rSrSrS rSrg)HttpHeaderCaseStrEnumi1  a  
A ``StrEnum`` where ``auto()`` will convert the name to `Http-Header-Case` to
produce each member's value.

Example usage::

    class Example(HttpHeaderCaseStrEnum):
        UPPER_CASE = auto()
        lower_case = auto()
        MixedCase = auto()

    assert Example.UPPER_CASE == "Upper-Case"
    assert Example.lower_case == "Lower-Case"
    assert Example.MixedCase == "Mixed-Case"

.. versionadded:: 0.4.8
c                 ,    [         R                  U 5      $ r   )rH   http_headerr)   s     r   r,   +HttpHeaderCaseStrEnum._generate_next_value_D  rk   r"   r(   Nr<   r(   r"   r   r~   r~   1  rl   r"   r~   )r   _versionr   rH   r   __version__tuple	partitionsplit__version_info__r   Enumr   r6   r?   rE   rN   rT   rZ   r`   rf   rn   rt   ry   r~   r(   r"   r   <module>r      s     " 'nY'R)>)>s)CA)F)L)LS)QRR c499 >w .w .)w ).* *.)w ).)w ).)w )./G /.0W 0.-7 -.)w )./G /r"   