
    nj                          S SK r S SKrS SKrS SKrS SKJrJr  S SKJr  S SKJ	r	   " S S\ R                  5      r " S S\ R                  5      r " S	 S
\5      rg)    N)ABCabstractmethod)gettext)warnc                       \ rS rSrSS jrSrg)ExtendAction'   Nc                     [        X R                  5      =(       d    / nUR                  U5        [        X R                  U5        g N)getattrdestextendsetattr)selfparser	namespacevaluesoption_stringitemss         _/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/osgeo_utils/auxiliary/gdal_argparse.py__call__ExtendAction.__call__(   s/    	99-3V	99e,     r   )__name__
__module____qualname____firstlineno__r   __static_attributes__r   r   r   r   r   '   s    -r   r   c                   f   ^  \ rS rSr      S	S\S\4U 4S jjjrU 4S jrS
U 4S jjrS rSr	U =r
$ )GDALArgumentParser.   disable_h_optionadd_gdal_generic_optionsc           	      D  > U(       a6  U(       d  UnO,Uc  [         R                  nU SSS[        U5      -   -   SU 3n[        TU ]  " SUUUU(       + =(       a    U(       + S.UD6  X`l        U(       a{  U(       a*  U R                  SS[         R                  [        S5      S9  O*U R                  SS	S[         R                  [        S5      S9  U R                  S
S[         R                  SS9  [        R                  S:  a  U R                  SS[        5        SU l        g )N
-   )fromfile_prefix_charsdescriptionformatter_classadd_helpz--helphelpzshow this help message and exit)actiondefaultr-   z-hz--help-general
store_truezRGives a brief usage message for the generic GDAL OGR command line options and exit)      r.   r   Fr   )argparseRawDescriptionHelpFormatterlensuper__init__r$   add_argumentSUPPRESSr   sysversion_inforegisterr   custom_format_arg)	r   titler*   r+   r)   r#   r$   kwargs	__class__s	           r   r7   GDALArgumentParser.__init__/   s2    #"*&.&J&JO!&r#qU|*<)=R}M 	
"7#+))J2J.J		

 	
 )A%#!!!$-- !BC	 "  !!!$-- !BC "   # ))i	   f$MM(Hl;!&r   c                 >   > SU;   a  SU l         [        TU ]  " U0 UD6$ )N--formatT)r=   r6   r8   )r   argsr?   r@   s      r   r8   GDALArgumentParser.add_argumenth   s(    %)D"w#T4V44r   c           	      2  > U R                   (       a  SSKJn  / n/ nU R                  (       ay  U(       ar  SnU[	        U5      :  a`  X   S:X  a/  UR                  X   5        UR                  XS-      5        US-  nOUR                  X   5        US-  nU[	        U5      :  a  M`  OUnUR                  S/U-   5      nUc  [        R                  " S5        USS  U-   nUb  X!;   a  U R                  b  Ub  U R                  S   n[	        U5      n	/ n
SnXy:  ak  X   nX:X  aE  XyS-
  :X  a  [        SU S35      eXUS-      -   n[        SU S	XS-       S
U S3[        5        US-  nUS-  nU
R                  U5        Xy:  a  Mk  U
n[        TU ]8  " SSU0UD6$ )Nr   )gdalrC      dummyz$Missing filename argument following : " z" is deprecated. Please use "z
" instead.rD   r   )r$   osgeorG   r=   r5   appendGeneralCmdLineProcessorr:   exitr)   	Exceptionr   DeprecationWarningr6   
parse_args)r   rD   optfile_argr?   rG   args_for_gdal_general	post_argsiprefixcountnew_argsargr@   s               r   rS   GDALArgumentParser.parse_argsm   s   (("$&!I %%$#d)mw*,!((1!((!e5Q-44TW=FA #d)m )-%//	<Q0QRD|8i'D #**6' //2FIEHA)g%AI~'B;-rR  !A;.CK=$1u+ 7''*e:7*
 FAQ$ )  Dw!6t6v66r   c                 ,    [         R                  " USS9$ )NT)comments)shlexsplit)r   arg_lines     r   convert_arg_line_to_args+GDALArgumentParser.convert_arg_line_to_args   s    {{8d33r   )r$   r=   )NNN@FF)NN)r   r   r   r   boolr7   r8   rS   rb   r   __classcell__)r@   s   @r   r!   r!   .   sK     !!&).7' 7' #'7' 7'r5
77r4 4r   r!   c                       \ rS rSrS rS r\S 5       r\R                  S 5       r\	S\
4S j5       r\	S 5       rS\4S	 jrS\4S
 jrS\4S jrS rSrg)
GDALScript   c                     S U l         S U l        S U l        S U l        SU l        S U l        S U l        / U l        S U l        Xl        g )NF)	progr>   r*   examplesr#   rT   _parserepilogr?   r   r?   s     r   r7   GDALScript.__init__   sI    	
 %r   c                 @    X4nU R                   R                  U5        g r   )rl   rN   )r   r>   	argumentsexamples       r   add_exampleGDALScript.add_example   s    $W%r   c           
          U R                   cW  [        SU R                  U R                  U R                  U R
                  SU R                  5       S.U R                  D6U l         U R                   $ )NT)rk   r>   r*   r#   r$   rn   r   )rm   r!   rk   r>   r*   r#   
get_epilogr?   )r   s    r   r   GDALScript.parser   sd    <<- YYjj ,,!%!6!6)-( ++DL ||r   c                     Xl         g r   )rm   )r   values     r   r   rx      s    r   returnc                     g r   r   )r   argvs     r   
get_parserGDALScript.get_parser       r   c                     g r   r   ro   s     r   doitGDALScript.doit   r   r   c                     U$ r   r   ro   s     r   augment_kwargsGDALScript.augment_kwargs   s    r   c                     U R                  U5      nUR                  XR                  S9n[        U5      nU R	                  U5      nU$ )N)rT   )r~   rS   rT   varsr   )r   r}   r   rD   r?   s        r   parseGDALScript.parse   sG    &  3C3C Dd$$V,r   c                     U R                  USS  5      n U R                  " S0 UD6  g! [         a    SS KnUR	                  5          gf = f)NrH   r   r   )r   r   rQ   	traceback	print_exc)r   r}   r?   r   s       r   mainGDALScript.main   sN    DH%	II 	!		s   ) A
	A
c                    U R                   nUc0  [        R                  R                  [        R
                  S   5      n/ n[        U R                  5       H(  u  nu  pEUR                  SUS-    SU SU SU 35        M*     SR                  U5      nU R                  (       a  US-   U R                  -   nU=(       d    S $ )Nr   z	example #rH   rJ   r&   rL   z

)rk   ospathbasenamer:   r}   	enumeraterl   rN   joinrn   )r   rk   example_listidxr>   rD   rn   s          r   rw   GDALScript.get_epilog   s    yy<77##CHHQK0D"+DMM":C%)CE7"UG2dV1TF KL #;\*;;f_t{{2F~r   )	rm   r*   r#   rn   rl   r?   rT   rk   r>   N)r   r   r   r   r7   rt   propertyr   setterr   r!   r~   r   dictr   r   intr   rw   r   r   r   r   rh   rh      s    
&   ]]  "4     T 	C 	
r   rh   )r3   r   r_   r:   abcr   r   r   warningsr   Actionr   ArgumentParserr!   rh   r   r   r   <module>r      sO   <  	  
 #  -8?? -y400 y4xJ Jr   