
    pcO                         d dl mZ d dlmZ  G d d          Z G d d          Z G d d          Z G d	 d
          Z G d d          Z G d d          ZdS )   )utils)print_errorc                       e Zd Zd Zd ZdS )
Annotationc                 >    || _         || _        g | _        d| _        d S N )keyvalueannotationssince)selfr
   r   s      (/usr/share/glib-2.0/codegen/dbustypes.py__init__zAnnotation.__init__   s#    



    c                 L   | j         }t          j        | j        d          }t          j        |          r|                                | _        nW|r|}t          j        |                                                              dd                              dd          | _        t          | j
                  dk    rBt          j        | j                  | _
        t          | j
                  dk    r|j
        | _
        | j        D ]}|                    |||||            d S )Norg.gtk.GDBus.C.Name-_.    )r
   r   lookup_annotationr   is_ugly_caselower	key_lowercamel_case_to_uscorereplacelenr   lookup_sincepost_process)	r   interface_prefixcns	cns_upper	cns_lower	containerr
   overridden_keyas	            r   r    zAnnotation.post_process!   s   h04
 
 n-- 
	+1133DNN %$*3//c""c""	 N tz??a+D,<==DJ4:!##&_
! 	N 	NANN+S)YMMMM	N 	Nr   N__name__
__module____qualname__r   r     r   r   r   r      s7          N N N N Nr   r   c                       e Zd Zd Zd ZdS )Argc                 L    || _         || _        g | _        d| _        d| _        d S r   )name	signaturer   
doc_stringr   )r   r0   r1   s      r   r   zArg.__init__<   s*    	"


r   c                 :   t          | j                  dk    rt          j        | j                  | _        t          | j                  dk    rt          j        | j                  | _        | j        
d|z  | _        d| _        d| _	        d| _
        d| _        d| _        d| _        d| j        z   | _        d| j        z   | _        d| _        d	| _        d
| _        t          j        | j        d          s| j        dk    rAd| _        d| _	        d| _        d| _        d | _        d| _        d| _        d| _        d| _        n| j        dk    rAd| _        d| _	        d| _        d| _        d | _        d| _        d| _        d| _        d| _        nj| j        dk    rAd| _        d| _	        d| _        d| _        d | _        d| _        d| _        d| _        d| _        n| j        dk    rAd | _        d!| _	        d"| _        d#| _        d | _        d| _        d| _        d$| _        d%| _        n| j        d&k    rAd| _        d| _	        d'| _        d| _        d | _        d&| _        d&| _        d(| _        d| _        n| j        d)k    rAd | _        d | _	        d*| _        d#| _        d | _        d)| _        d)| _        d+| _        d%| _        n:| j        d,k    rAd-| _        d-| _	        d.| _        d/| _        d | _        d,| _        d,| _        d0| _        d1| _        n| j        d2k    rAd3| _        d3| _	        d4| _        d5| _        d | _        d2| _        d2| _        d6| _        d7| _        n| j        d8k    rAd9| _        d9| _	        d:| _        d;| _        d | _        d8| _        d8| _        d<| _        d=| _        nV| j        d>k    rHd?| _        d?| _	        d@| _
        dA| _        dB| _        dC| _        d>| _        d>| _        dD| _        dE| _        n| j        dFk    rHd?| _        d?| _	        d@| _
        dA| _        dB| _        dC| _        dF| _        dF| _        dD| _        dE| _        n| j        dGk    rHd?| _        d?| _	        d@| _
        dA| _        dB| _        dC| _        dG| _        dG| _        dD| _        dE| _        n]| j        dHk    rHd?| _        d?| _	        d@| _
        dA| _        dB| _        dC| _        dI| _        dI| _        dJ| _        dE| _        n
| j        dKk    rNdL| _        dL| _	        dA| _
        dM| _        dN| _        dO| _        dP| _        dP| _        dQ| _        dR| _        dS| _        n| j        dTk    rNdL| _        dL| _	        dA| _
        dM| _        dN| _        dO| _        dU| _        dU| _        dV| _        dR| _        dS| _        nX| j        dWk    rMdL| _        dL| _	        dA| _
        dM| _        dN| _        dO| _        dX| _        dX| _        dY| _        dR| _        dS| _        | j        D ]}|                    |||||            d S )ZNr   zunnamed_arg%dz
GVariant *zGVariant **G_TYPE_VARIANTg_variant_unref@XXXg_value_get_variantr	   zorg.gtk.GDBus.C.ForceGVariantbz	gboolean z
gboolean *G_TYPE_BOOLEANg_variant_get_booleang_value_get_booleanyzguchar zguchar *G_TYPE_UCHARg_variant_get_byteg_value_get_ucharnzgint zgint16 zgint16 *
G_TYPE_INTg_variant_get_int16g_value_get_intqzguint zguint16 z	guint16 *G_TYPE_UINTg_variant_get_uint16g_value_get_uintizgint *g_variant_get_int32uzguint *g_variant_get_uint32xzgint64 zgint64 *G_TYPE_INT64g_variant_get_int64g_value_get_int64tzguint64 z	guint64 *G_TYPE_UINT64g_variant_get_uint64g_value_get_uint64dzgdouble z	gdouble *G_TYPE_DOUBLEg_variant_get_doubleg_value_get_doubleszconst gchar *zgchar *zgchar **G_TYPE_STRINGg_freeg_variant_get_stringg_value_get_stringogayz^ayg_variant_get_bytestringaszconst gchar *const *z	gchar ***G_TYPE_STRV
g_strfreevz^asg_variant_get_strvg_value_get_boxedz(array zero-terminated=1)aoz^aog_variant_get_objvaayz^aayg_variant_get_bytestring_array)r   r2   r   lookup_docsr   r   r   r0   
ctype_in_gctype_inctype_in_dup	ctype_outgtype	free_funcr1   	format_in
format_outgvariant_get
gvalue_getarray_annotationr   r    )r   r!   r"   r#   r$   
arg_numberr'   s          r   r    zArg.post_processC   sf   t1$$#/0@AADOtz??a+D,<==DJ9'*4DI&$(&%
*t~-.!/ "&=
 
 l	D ~$$"- +!--
!%!$"%$;!"73&&"+ )!++
!%!$"%$8!"53&&") )!+)
!%!$"%$9!"33&&"* *!,*
!%!$"%$:!"43&&") '!))
!%!$"%$9!"33&&"* (!**
!%!$"%$:!"43&&"+ )!++
!%!$"%$9!"53&&", *!,,
!%!$"%$:!"63&&", *!,,
!%!$"%$:!"63&&"1 /$-!!+,
!)!$"%$:!"63&&"1 /$-!!+,
!)!$"%$:!"63&&"1 /$-!!+,
!)!$"%$:!"64''"1 /$-!!+,
!)!&"'$>!"64''"8 6$.!!,*
!-!&"'$8!"5(C%%4''"8 6$.!!,*
!-!&"'$8!"5(C%%5(("8 6$.!!,*
!-!'"($D!"5(C%! 	N 	NANN+S)YMMMM	N 	Nr   Nr(   r,   r   r   r.   r.   ;   s<          DN DN DN DN DNr   r.   c                       e Zd ZddZd ZdS )MethodTc                     || _         || _        g | _        g | _        g | _        d| _        d| _        d| _        d| _        d S Nr	   F)	r0   h_type_implies_unix_fdin_argsout_argsr   r2   r   
deprecatedunix_fd)r   r0   r|   s      r   r   zMethod.__init__  sG    	&<#
r   c                 \   t          | j                  dk    rt          j        | j                  | _        t          | j                  dk    rBt          j        | j                  | _        t          | j                  dk    r|j        | _        | j        }t          j        | j        d          }t          j	        |          r|
                                | _        nC|r|}t          j        |          
                                                    dd          | _        | j                            dd          | _        d}| j        D ]7}	|	                    |||||           |dz  }| j        rd|	j        v rd| _        8| j        D ]7}	|	                    |||||           |dz  }| j        rd|	j        v rd| _        8t          j        | j        d          d	k    rd| _        t          j        | j        d
          rd| _        | j        D ]}	|	                    |||||            d S )Nr   r   r   r   r   hTorg.freedesktop.DBus.Deprecatedtruezorg.gtk.GDBus.C.UnixFD)r   r2   r   rk   r   r   r   r0   r   r   r   
name_lowerr   r   name_hyphenr}   r    r|   r1   r   r~   r   
r   r!   r"   r#   r$   containing_ifacer0   overridden_name	arg_countr'   s
             r   r    zMethod.post_process  sM    t1$$#/0@AADOtz??a+D,<==DJ4:!##-3
y14
 
 o.. 	Y-3355DOO '&#8>>DDFFNNsTWXXDO?223<<	 	$ 	$ANN+S)Y	RRRNI* $sak/A/A# 	$ 	$ANN+S)Y	RRRNI* $sak/A/A# #D$46WXX  #DO"4#35MNN 	 DL! 	N 	NANN+S)YMMMM	N 	Nr   N)Tr(   r,   r   r   ry   ry   
  s<        	 	 	 	-N -N -N -N -Nr   ry   c                       e Zd Zd Zd ZdS )Signalc                 Z    || _         g | _        g | _        d| _        d| _        d| _        d S r{   )r0   argsr   r2   r   r   r   r0   s     r   r   zSignal.__init__G  s1    		
r   c                 n   t          | j                  dk    rt          j        | j                  | _        t          | j                  dk    rBt          j        | j                  | _        t          | j                  dk    r|j        | _        | j        }t          j        | j        d          }t          j	        |          r|
                                | _        nC|r|}t          j        |          
                                                    dd          | _        | j                            dd          | _        d}| j        D ] }	|	                    |||||           |dz  }!t          j        | j        d          dk    rd| _        | j        D ]}	|	                    |||||            d S )	Nr   r   r   r   r   r   r   T)r   r2   r   rk   r   r   r   r0   r   r   r   r   r   r   r   r   r    r   r   s
             r   r    zSignal.post_processO  s    t1$$#/0@AADOtz??a+D,<==DJ4:!##-3
y14
 
 o.. 	Y-3355DOO '&#8>>DDFFNNsTWXXDO?223<<	 	 	ANN+S)Y	RRRNII #D$46WXX  #DO! 	N 	NANN+S)YMMMM	N 	Nr   Nr(   r,   r   r   r   r   F  s7             "N "N "N "N "Nr   r   c                       e Zd Zd Zd ZdS )Propertyc                    || _         || _        || _        g | _        t	          d| j                  | _        | j        | j        _        d| _        d| _        | j        dk    rd| _        d| _        nM| j        dk    rd| _        n:| j        dk    rd| _        n't          d	                    | j                             d| _
        d| _        d| _        d| _        d S )	Nr   F	readwriteTreadwritezInvalid access type "{}"r	   )r0   r1   accessr   r.   argreadablewritabler   formatr2   r   r   emits_changed_signal)r   r0   r1   r   s       r   r   zProperty.__init__u  s    	"w//#/;+%% DM DMM[F"" DMM[G## DMM299$+FFGGG
$(!!!r   c                    t          | j                  dk    rt          j        | j                  | _        t          | j                  dk    rBt          j        | j                  | _        t          | j                  dk    r|j        | _        | j        }t          j        | j        d          }t          j	        |          r|
                                | _        nC|r|}t          j        |          
                                                    dd          | _        | j                            dd          | _        | j        dk    rd| _        | j        | j        _        | j                            ||||d           t          j        | j        d          dk    rd	| _        | j        D ]}|                    |||||            t          j        | j        d
          dv r	d| _        d S d S )Nr   r   r   r   typetype_r   r   Tz0org.freedesktop.DBus.Property.EmitsChangedSignal)falseconstF)r   r2   r   rk   r   r   r   r0   r   r   r   r   r   r   r   r   r    r   r   )	r   r!   r"   r#   r$   r   r0   r   r'   s	            r   r    zProperty.post_process  s    t1$$#/0@AADOtz??a+D,<==DJ4:!##-3
y14
 
 o.. 	Y-3355DOO '&#8>>DDFFNNsTWXXDO?223<< ?f$$%DO  $/.Y	1MMM #D$46WXX  #DO! 	N 	NANN+S)YMMMM "P
 
    ).D%%%   r   Nr(   r,   r   r   r   r   t  s2        ) ) )... .. .. .. ..r   r   c                       e Zd Zd Zd ZdS )	Interfacec                     || _         g | _        g | _        g | _        g | _        d| _        d| _        d| _        d| _        d S r{   )	r0   methodssignals
propertiesr   r2   doc_string_briefr   r   r   s     r   r   zInterface.__init__  sG    	 "
r   c                 J   t          | j                  dk    rt          j        | j                  | _        t          | j                  dk    rt          j        | j                  | _        t          | j                  dk    rt          j        | j                  | _        t          |          dk    rt          j	        |          rE|
                    dd          }|                                dz   }|                                dz   }n[|}t          j        |                                          dz   }t          j        |                                          dz   }nd}d}d}t          j        | j        d          }t          j	        |          rf|
                    dd          }||z   }|| _        || _        || _        ||                                z   | _        |                                | _        n|r|}n3| j        }|                    |          r|t          |          d          }|| _        t          j        |          }t          j        |dz   |z             }|| _        || _        |t          j        |          z   | _        t          j        |                                          | _        | j                                        
                    dd          | _        t          j        | j        d          dk    rd	| _        | j        D ]}	|	                    |||||            | j        D ]}
|
                    |||||            | j        D ]}|                    |||||            | j        D ]}|                    |||||            d S )
Nr   r   r	   r   r   r   r   r   T)r   r2   r   rk   r   r   lookup_brief_docsr   r   r   r   upperr   r   r   name_without_prefix
camel_namens_upperr   
name_upperr0   
startswith
strip_dotsr   r   r   r    r   r   )r   r!   c_namespacer"   r#   r$   r   r0   name_with_nsmrY   pr'   s                r   r    zInterface.post_process  s   t1$$#/0@AADOt$%%**$)$;D<L$M$MD!tz??a+D,<==DJ{a!+.. R!))#r22'--//#5	'--//#5		!!6{CCIIKKcQ	!6{CCIIKKcQ		CII14
 
 o.. 	G"**333D:L'+D$*DO%DM'/*?*?*A*AADO-3355DOO  9&y??#344 9$4 5 5 7 78D'+D$#D))D +C#I,<==L*DO%DM'%*DT*J*JJDO#8>>DDFFDO?0022::3DD #D$46WXX  #DO 	N 	NANN+S)YMMMM 	N 	NANN+S)YMMMM 	N 	NANN+S)YMMMM! 	N 	NANN+S)YMMMM	N 	Nr   Nr(   r,   r   r   r   r     s<        	  	  	 DN DN DN DN DNr   r   N)	r	   r   r   r   r.   ry   r   r   r   r,   r   r   <module>r      sn  ,            N N N N N N N NBLN LN LN LN LN LN LN LN^9N 9N 9N 9N 9N 9N 9N 9Nx+N +N +N +N +N +N +N +N\F. F. F. F. F. F. F. F.RPN PN PN PN PN PN PN PN PN PNr   