ó žz2Tc@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/kou/work/ruby/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/kou/work/ruby/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/kou/work/ruby/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyt_parameter_warning+s$cCsRt|tjƒ}t|tjƒ}|jjdk rN|jj|jƒ}nd}|j radS|jj sš|j ||d|jj fƒt |_dSt|jtjƒr¼t |_dSt|jtjtjfƒr|jjtjkr|j ||dƒt |_dS|rxt|tjƒrx|jjd krx|jdkrx|j ||dtjtjfƒt |_dS|r°t|tjƒr°|j ||dƒt |_dS|rt|tjtjfƒr|jdkr|j r|jtjkr|j ||dƒt |_ndS|jdkrN|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(RRtReturnRttypet target_ginameRRtlookup_typenodetskiptresolvedR)tunresolved_stringtFalsetintrospectabletVarargstListtArrayt element_typetTYPE_ANYRtscopetPARAM_SCOPE_CALLtPARAM_SCOPE_ASYNCtRecordtUniontget_typetforeignttransfertPARAM_TRANSFER_NONE(RR"tnodet is_returnt is_parameterttarget((s‚/home/kou/work/ruby/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyt_introspectable_param_analysisDsb           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(R/R1RRt TypeUnknownR5R4t_type_is_introspectableR6tMaptkey_typet value_typettarget_foreigntTruettarget_fundamentaltis_equivt TYPE_VALISTtTYPE_LONG_LONGtTYPE_LONG_ULONGtTYPE_LONG_DOUBLERR-R2R.(RttypevaltwarnRD((s‚/home/kou/work/ruby/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyRG„s*   !cCsW|jjdk r:|jj|jƒ}|dkr>dSndS|jrSt|_ndS(N(R+R,RRR-R.RL(RR"RARD((s‚/home/kou/work/ruby/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(RRtAliasRGRDR1R2RL(Rtobjtstack((s‚/home/kou/work/ruby/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyR ªscCsPt|tjƒrLx!|jD]}|j||ƒqW|j||jƒntS(N(RRtCallablet parametersRUtretvalRL(RRWRXR#((s‚/home/kou/work/ruby/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.R1RRRYRZRER[tClasst InterfaceR;R<tfieldsR+RGR2RL(RRWRXR#tfield((s‚/home/kou/work/ruby/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.R1RRRYRZRGR+R2RLR[(RRWRXR#((s‚/home/kou/work/ruby/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.R1RRR\R]R;R<R^tanonymous_nodeR2RGR+t propertiestsignalsRRL(RRWRXR_tproptsig((s‚/home/kou/work/ruby/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.R1RRtFunctiontmoved_toRR2RLtinternal_skipped(RRWRX((s‚/home/kou/work/ruby/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyRés  ! N(t__name__t __module__R RRR)RER1RGRUR RRRRR(((s‚/home/kou/work/ruby/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyRs   @      N(RRRtannotationparserRtobjectR(((s‚/home/kou/work/ruby/ruby-gnome2.win32/gobject-introspection/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyts