
    2hh                        S  r S rS r " S S5      r " S S5      r " S S5      r " S	 S
5      r\" 5       R                  r	SSK
Jr  \\S 5       5       rSSKr\R                  S 5       r\R                  S 5       r " S S5      rg)c                      gzSome unrelated info.N r       I/opt/python-3.13.8/usr/lib/python3.13/test/test_doctest/doctest_lineno.pyfunc_with_docstringr          r   c                      g Nr   r   r   r   func_without_docstringr      s    r   c                      g)z`
This function really contains a test case.

>>> func_with_doctest.__name__
'func_with_doctest'
   r   r   r   r   func_with_doctestr      s     r   c                       \ rS rSrSrSrg)ClassWithDocstring   z!Some unrelated class information.r   N__name__
__module____qualname____firstlineno____doc____static_attributes__r   r   r   r   r      s    +r   r   c                       \ rS rSrSrg)ClassWithoutDocstring   r   N)r   r   r   r   r   r   r   r   r   r      s    r   r   c                       \ rS rSrSrSrg)ClassWithDoctest   z[This class really has a test case in it.

>>> ClassWithDoctest.__name__
'ClassWithDoctest'
r   Nr   r   r   r   r   r      s    r   r   c                   F    \ rS rSrS rS rS r\S 5       r\	S 5       r
Srg)	MethodWrapper&   c                     g)zMethod with a docstring.Nr   selfs    r   method_with_docstring#MethodWrapper.method_with_docstring'   r   r   c                     g r
   r   r#   s    r   method_without_docstring&MethodWrapper.method_without_docstring*   s    r   c                     g)zZ
This has a doctest!
>>> MethodWrapper.method_with_doctest.__name__
'method_with_doctest'
Nr   r#   s    r   method_with_doctest!MethodWrapper.method_with_doctest-   r   r   c                     g)zd
This has a doctest!
>>> MethodWrapper.classmethod_with_doctest.__name__
'classmethod_with_doctest'
Nr   )clss    r   classmethod_with_doctest&MethodWrapper.classmethod_with_doctest4   r   r   c                     g)z^
This has a doctest!
>>> MethodWrapper.property_with_doctest.__name__
'property_with_doctest'
Nr   r#   s    r   property_with_doctest#MethodWrapper.property_with_doctest<   r   r   r   N)r   r   r   r   r%   r(   r+   classmethodr/   propertyr2   r   r   r   r   r    r    &   s9    '    r   r        )	decoratorc                      gr   r   r   r   r   func_with_docstring_wrappedr9   K   r   r   Nc                     U * $ )z$
>>> cached_func_with_doctest(1)
-1
r   values    r   cached_func_with_doctestr=   U   s     6Mr   c                     U S-   $ )N   r   r;   s    r   cached_func_without_docstringr@   ^   s    19r   c                   8    \ rS rSr\R
                  S 5       rSrg)ClassWithACachedPropertyc   c                     g)z
>>> X().cached
-1
r6   r   r#   s    r   cachedClassWithACachedProperty.cachede   s     r   r   N)r   r   r   r   	functoolscached_propertyrE   r   r   r   r   rB   rB   c   s     r   rB   )r   r   r   r   r   r   r    object__str__str_wrappertest.test_doctest.decorator_modr7   r9   rG   cacher=   r@   rB   r   r   r   <module>rN      s   	, ,	 	  > h 6

  
      r   