ó ‘réZc@sãddlZddlZddlZddlmZddlmZddlmZddlmZddlmZddl m Z m Z d „Z d „Z d „Zd „Zd „Zd„Zd„ZedkrßeƒndS(iÿÿÿÿNi(tconfig(t dbustypes(tparser(tcodegen(tcodegen_docbook(t print_errort print_warningcCs(x!|D]}|j|kr|SqWdS(N(tnametNone(targ_listtarg_nameta((sS/home/vagrant/ruby-gnome2/glib2/vendor/local/share/glib-2.0/codegen/codegen_main.pytfind_arg#s cCs+x$|jD]}|j|kr |Sq WdS(N(tmethodsRR(tifacetmethodtm((sS/home/vagrant/ruby-gnome2/glib2/vendor/local/share/glib-2.0/codegen/codegen_main.pyt find_method)scCs+x$|jD]}|j|kr |Sq WdS(N(tsignalsRR(RtsignalR((sS/home/vagrant/ruby-gnome2/glib2/vendor/local/share/glib-2.0/codegen/codegen_main.pyt find_signal/scCs+x$|jD]}|j|kr |Sq WdS(N(t propertiesRR(RtpropR((sS/home/vagrant/ruby-gnome2/glib2/vendor/local/share/glib-2.0/codegen/codegen_main.pyt find_prop5scCsýd}x'|D]} | j|kr | }Pq q W|dkrRtdj|ƒƒnd} |rt||ƒ} | dkr’tdj||ƒƒn|rüt| j|ƒ} | dkrót| j|ƒ} | dkrótdj|||ƒƒqón| } qÚ| } nÕ|r‘t||ƒ} | dkr?tdj||ƒƒn|rˆt| j |ƒ} | dkrtdj|||ƒƒn| } qÚ| } nI|rÔt ||ƒ}|dkrËtdj||ƒƒn|} n|} | j j dt j||ƒƒdS(NsNo interface "{}"s No method "{}" on interface "{}"s,No arg "{}" on method "{}" on interface "{}"s No signal "{}" on interface "{}"s,No arg "{}" on signal "{}" on interface "{}"s"No property "{}" on interface "{}"i(RRRtformatRR tin_argstout_argsRtargsRt annotationstinsertRt Annotation(t iface_listRRRRtargtkeytvaluet iface_objtit target_objt method_objtarg_objt signal_objtprop_obj((sS/home/vagrant/ruby-gnome2/glib2/vendor/local/share/glib-2.0/codegen/codegen_main.pytapply_annotation;sJ             c CsBx;|D]3\}}}|jdƒ}|dkrâ|d|!}||d}|jdƒ}|dkrÀ||d}|d|!}|jdƒ}|d|!}t||d|d|||ƒq:t||d|dd||ƒq|jdƒ}|dkr:|d|!}||d} t||dd| d||ƒq|jd ƒ}|dkr|d|!} | jd ƒ}| d|!}| |d} |jdƒ}|dkró||d}|jdƒ}|d|!}t||| dd|||ƒq:t||| ddd||ƒq|}t||dddd||ƒqWdS( Ns::iÿÿÿÿiit[it]t:s()t.(tfindR*Rtrfind( Rtannotation_listtwhatR!R"tposRRR RtcombinedR((sS/home/vagrant/ruby-gnome2/glib2/vendor/local/share/glib-2.0/codegen/codegen_main.pytapply_annotationsisB     ""  "     ""c Cs½tjddƒ}|jddddddd ƒ|jd ddd d d gdd ƒ|jdddd dddƒ|jdddd dddƒ|jdd dddƒ|jdddddgd dddƒ|jddddd ƒ|jd!d ddd"ƒ|jd#dd$d d dd%dd&ƒ|jƒ}|jd'dddd(ƒ|jd)d ddd*ƒ|jd+d ddd,ƒ|jƒ}|jd-dddd.ƒ|jd/dd0d ddd1ƒ|jƒ}t|jƒd2krõtd3ƒn|jdk s|j dk r/|j dk r/t d4ƒn|jr‘|jd5}t jj|j|ƒ}t|_t jj|j|jd6ƒ}t|_nŽ|jrÔ|j dkr¶t d7ƒn|j }t jj|ƒ}nK|jr|j dkrùt d8ƒn|j }t jj|ƒd2d5}ng}xX|j|jD]F}t|d9ƒ}|jƒ} WdQXtj| ƒ} |j| ƒq6W|jdkr¢t||jƒnx$|D]} | j|j|j ƒq©W|j } t!j"|ƒ} | rÿ| j#| |jƒ}n|jrZt|d:ƒ>}t$j%||j |j&|j'||j(|ƒ}|j#ƒWdQXn|jr¬t|d:ƒ5}t$j)||j |j&|| |ƒ}|j#ƒWdQXnt*j+d2ƒdS(;Nt descriptions&D-Bus code and documentation generatortfilestmetavartFILEtnargst*thelpsD-Bus introspection XML files --xml-filestactiontappendtdefaults--interface-prefixtPREFIXts<String to strip from D-Bus interface names for code and docss --c-namespacet NAMESPACEs)The namespace to use for generated C codes--c-generate-object-managert store_truesCGenerate a GDBusObjectManagerClient subclass when generating C codes--c-generate-autocleanuptchoicestnonetobjectstallsGenerate autocleanup supports--generate-docbooktOUTFILESs2Generate Docbook in OUTFILES-org.Project.IFace.xmls --pragma-onces(Use "pragma once" as the inclusion guards --annotateisWHAT KEY VALUEs*Add annotation (may be used several times)s--generate-c-codes Generate C code in OUTFILES.[ch]s--headersGenerate C headerss--bodysGenerate C codes--outputs$Write output into the specified files--output-directorytOUTDIRs"Location to output generated filesisHThe "--xml-files" option is deprecated; use positional arguments insteadsZUsing --generate-c-code or --generate-docbook and --output at the same time is not alloweds.hs.cs Using --header requires --outputsUsing --body requires --outputtrbtw(,targparsetArgumentParsert add_argumenttadd_mutually_exclusive_groupt parse_argstlent xml_filesRtgenerate_c_codeRtgenerate_docbooktoutputRtostpathtjointoutput_directorytTruetheadertbodytbasenametsplitextR7topentreadRtparse_dbus_xmltextendtannotateR5t post_processtinterface_prefixt c_namespaceRtDocbookCodeGeneratortgenerateRtHeaderCodeGeneratortc_generate_object_managertc_generate_autocleanupt pragma_oncet CodeGeneratortsystexit(t arg_parsertgroupRt header_nameth_filetc_filet all_ifacestfnametftxml_datat parsed_ifacesR$tdocbookt docbook_gentrettoutfiletgen((sS/home/vagrant/ruby-gnome2/glib2/vendor/local/share/glib-2.0/codegen/codegen_main.pyt codegen_main–s®!                       t__main__(RLRVRnRARRRRRtutilsRRR RRRR*R5Rt__name__(((sS/home/vagrant/ruby-gnome2/glib2/vendor/local/share/glib-2.0/codegen/codegen_main.pyts"        . - i