
    h                         S SK Jr  S SKJrJr  S SKr\ " S S\R                  5      5       r " S S\R                  5      r	g)    )	dataclass)CallableOptionalNc                      ^  \ rS rSr% Sr\\   \S'   Sr\\	   \S'   Sr
\\R                     \S'   \R                  R                  r\R                   \S'   U 4S jrSrU =r$ )	GeneratorConfig   N	generator
gen_kwargsfeaturessplitc                 |   > [         TU ]  5         U R                  c  [        S5      eU R                  c  0 U l        g g )Nzgenerator must be specified)super__post_init__r	   
ValueErrorr
   )self	__class__s    g/home/james-whalen/.local/lib/python3.13/site-packages/datasets/packaged_modules/generator/generator.pyr   GeneratorConfig.__post_init__   s:    >>!:;;??" DO #    )r
   )__name__
__module____qualname____firstlineno__r	   r   r   __annotations__r
   dictr   datasetsFeaturesSplitTRAINr   
NamedSplitr   __static_attributes____classcell__)r   s   @r   r   r      sY    $(Ix!(!%J%,0Hhx(()0!)!5!5E85! !r   r   c                   *    \ rS rSr\rS rS rS rSr	g)	Generator   c                 R    [         R                  " U R                  R                  S9$ )N)r   )r   DatasetInfoconfigr   )r   s    r   _infoGenerator._info   s    ##T[[-A-ABBr   c                 ~    [         R                  " U R                  R                  U R                  R                  S9/$ )N)namer
   )r   SplitGeneratorr(   r   r
   )r   
dl_managers     r   _split_generatorsGenerator._split_generators   s,    ''T[[->->4;;KaKabccr   c              +   j   #    [        U R                  R                  " S0 UD65       S h  vN   g  N7f)N )	enumerater(   r	   )r   r
   s     r   _generate_examplesGenerator._generate_examples    s%     T[[22@Z@AAAs   )313r2   N)
r   r   r   r   r   BUILDER_CONFIG_CLASSr)   r/   r4   r!   r2   r   r   r$   r$      s    *CdBr   r$   )
dataclassesr   typingr   r   r   BuilderConfigr   GeneratorBasedBuilderr$   r2   r   r   <module>r;      sC    ! %  !h,, ! !
B.. 
Br   