ó 6šâWc@s&ddlZdefd„ƒYZdS(iÿÿÿÿNtExportercBsžeZdZdZdd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z d „Z d „Zd „Zd„Zd„Zd„Zd„ZRS(s=Base class for objects capable to generate boost.python code.t icCs(||_||_d|_g|_dS(N(tinfot parser_tailtNonetinterface_filet declarations(tselfRR((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pyt__init__s   cCst|jjƒ‚dS(N(tNotImplementedErrort __class__t__name__(R((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pytNamescCs|jS(N(R(R((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pytTailscCsP||_|jj}|j}|j||ƒ\}}||_|j|ƒdS(N(tparserRtincludeRtparset parser_headertSetDeclarations(RRtheaderttailRR((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pytParses     cCs ||_dS(N(R(Rt parsed_header((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pytSetParsedHeader(scCs ||_dS(N(R(RR((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pyR,scCs!|j|ƒ|j||ƒdS(N(t WriteIncludetExport(Rtcodeunittexported_names((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pyt GenerateCode0s cCs|jdd|jjƒdS(NRs#include <%s> (tWriteRR(RR((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pyR5scCsdS(s1subclasses must override this to do the real workN((RRR((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pyR9scCsVg}x3|jD](}|jƒ|kr|j|ƒqqW|sRtd|‚n|S(Nsno %s declaration found!(RtFullNametappendt RuntimeError(Rtfullnametdeclstdecl((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pytGetDeclarations>scCs|j|ƒ}|dS(Ni(R$(RR!R"((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pytGetDeclarationHscCsd|jjfS(s†Returns a string that uniquely identifies this instance. All exporters will be sorted by Order before being exported. i(Rtname(R((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pytOrderNscCs |jjS(N(RR(R((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pytHeaderUscCs@t|ƒt|ƒko?|jƒ|jƒko?|j|jkS(N(ttypeR R(Rtother((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pyt__eq__Ys0cCs ||k S(N((RR*((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pyt__ne__]ss N(R t __module__t__doc__tINDENTRRR R RRRRRRR$R%R'R(R+R,(((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pyR s"            (tos.pathtostobjectR(((s2/usr/lib/python2.7/dist-packages/Pyste/Exporter.pyts