ó OŒÿUc@sJddlmZddlmZddlmZdefd„ƒYZdS(i(tast(tmessage(t TAG_RETURNStIntrospectablePasscBszeZd„Zd„Zd d„Zd„Zed„Zd„Z d„Z d„Z d„Z d „Z d „Zd „ZRS( cCs"||_|j|_||_dS(N(t _transformert namespacet _namespacet_blocks(tselft transformertblocks((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyt__init__s  cCs‰|jj|jƒ|jj|jƒ|jj|jƒ|jj|jƒ|jj|jƒ|jj|jƒ|jj|jƒdS(N(Rtwalkt_introspectable_alias_analysist_propagate_callable_skipst _analyze_nodet!_introspectable_callable_analysist_introspectable_pass3t'_remove_non_reachable_backcompat_copies(R((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pytvalidate"sc Csît|tjtjfƒrdSd}t|dƒrnd|jf}|jj|jƒ}|rt|j }qtnd}t|tj ƒr™d|j f}n3d}|rÌ|j jt ƒ}|rÌ|j }qÌntj||||d|ƒdS(Ntsymbols%s: ts argument %s: sreturn value: t positions(t isinstanceRt VFunctiontCallbacktNonethasattrRRtgettpositiont ParametertargnamettagsRRt warn_node( RtparenttparamttextRtblocktprefixtcontextt return_tag((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyt_parameter_warning+s$cCsdt|tjƒ}t|tjƒ}|s6|s6t‚|jjdk r`|jj |jƒ}nd}|j rsdS|jj s¬|j ||d|jj fƒt|_dSt|jtjƒrÎt|_dSt|jtjtjfƒr!|jjtjkr!|j ||dƒt|_dS|rŠt|tjƒrŠ|jjd krŠ|jdkrŠ|j ||dtjtjfƒt|_dS|rÂt|tjƒrÂ|j ||dƒt|_dS|r1t|tjtjfƒr1|jdkr1|j r1|jtjkr-|j ||dƒt|_ndS|jdkr`|j ||dƒt|_dSdS( NsUnresolved type: %rs!Missing (element-type) annotationsGLib.DestroyNotifysGio.AsyncReadyCallbacksNMissing (scope) annotation for callback without GDestroyNotify (valid: %s, %s)s-Callbacks cannot be return values; use (skip)sXInvalid non-constant return of bare structure or union; register as boxed type or (skip)sMissing (transfer) annotation(sGLib.DestroyNotifysGio.AsyncReadyCallback(RRtReturnRtAssertionErrorttypet target_ginameRRtlookup_typenodetskiptresolvedR)tunresolved_stringtFalsetintrospectabletVarargstListtArrayt element_typetTYPE_ANYRtscopetPARAM_SCOPE_CALLtPARAM_SCOPE_ASYNCtRecordtUniontget_typetforeignttransfertPARAM_TRANSFER_NONE(RR"tnodet is_returnt is_parameterttarget((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyt_introspectable_param_analysisDsd           cCs|js tSt|tjƒr#tSt|tjtjfƒrN|j|jƒSt|tj ƒr‚|j|j ƒo|j|j ƒS|j rt S|jrÚ|jtjƒr®tS|jtjtjtjfƒrÓtSt Sn|jj|ƒ}|sötS|jo|j S(N(R0R2RRt TypeUnknownR6R5t_type_is_introspectableR7tMaptkey_typet value_typettarget_foreigntTruettarget_fundamentaltis_equivt TYPE_VALISTtTYPE_LONG_LONGtTYPE_LONG_ULONGtTYPE_LONG_DOUBLERR.R3R/(RttypevaltwarnRE((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyRH„s*   !cCsW|jjdk r:|jj|jƒ}|dkr>dSndS|jrSt|_ndS(N(R,R-RRR.R/RM(RR"RBRE((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyt_propagate_parameter_skipŸs  cCs7t|tjƒr3|j|jƒs3t|_q3ntS(N(RRtAliasRHRER2R3RM(Rtobjtstack((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyR ªscCsPt|tjƒrLx!|jD]}|j||ƒqW|j||jƒntS(N(RRtCallablet parametersRVtretvalRM(RRXRYR#((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyR°s cCsÅ|jr tSt|tjƒrYx!|jD]}|j||ƒq)W|j||jƒnt|tjtj tj tj fƒrÁx>|j D]0}|j rŠ|j|j ƒsºt|_qºqŠqŠWntS(N(R/R2RRRZR[RFR\tClasst InterfaceR<R=tfieldsR,RHR3RM(RRXRYR#tfield((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyR·s ' cCs{|jr tSt|tjƒrwx0|jD]%}|j|jƒs)t|_t Sq)W|j|j jƒswt|_t Snt S(N( R/R2RRRZR[RHR,R3RMR\(RRXRYR#((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyRÆs   cCs|jr tSt|tjtjtjtjfƒrxV|jD]H}|j rh|j j s†t|_ q†q>|j |j ƒs>t|_ q>q>Wnt|tjtjfƒrx/|j D]$}|j |j ƒs²t|_ q²q²Wx'|jD]}|j||gƒqäWntS(N(R/R2RRR]R^R<R=R_tanonymous_nodeR3RHR,t propertiestsignalsRRM(RRXRYR`tproptsig((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyRÔs  '  cCsJ|jr tSt|tjƒrF|jdk rF|jsFt|_ qFntS(N( R/R2RRtFunctiontmoved_toRR3RMtinternal_skipped(RRXRY((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyRés  ! N(t__name__t __module__R RRR)RFR2RHRVR RRRRR(((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyRs   @      N(RRRtannotationparserRtobjectR(((s|/home/vagrant/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyts