
    hR                    @    S SK Jr  S SKrS SKJrJrJr  SS jrSS jrg)    )annotationsN)AnyTupleTypec                    [        U 5      (       d  gS[        R                  R                  5       ;   a,   SSKn[        XR                  R                  5      (       a  g gg! [         a     gf = f)zuCheck if a class is a Flax module and return fields to skip.

Returns:
    Tuple of (is_flax_module, fields_to_skip)
)F z
flax.linenr   N)T)nameparent)	is_dataclass_typesysmoduleskeys
flax.linen
issubclasslinenModuleImportError)clsflaxs     ]/home/james-whalen/.local/lib/python3.13/site-packages/tyro/constructors/_struct_spec_flax.pyis_flax_moduler      sj     S!! s{{''))	#zz0011/ 2   		s   (A! !
A.-A.c                Z    SSK n[        U [        5      =(       a    UR                  U 5      $ )z'Check if an object is a dataclass type.r   N)dataclasses
isinstancetypeis_dataclass)objr   s     r   r   r   #   s"    c4 B[%=%=c%BB    )r   z	Type[Any]returnzTuple[bool, Tuple[str, ...]])r   r   r   bool)	
__future__r   r   typingr   r   r   r   r   r   r   r   <module>r#      s    " 
 # #8Cr   