Ñò PhEc@s ddkZddkZddkZddkZddkZddkZddkZddkZddk Z ddk i Z ddk iZddkiZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd „ƒYZd efd „ƒYZdS( iÿÿÿÿNtComponentSourcecBs>eZdZdd„Zd„Zd„Zd„Zd„ZRS(s:a time-sensitive descriptor object for a Myghty component.cCsu||_d|_d|_d|_d|_d|_d|_d|_|o ||_ nt t i ƒƒ|_ dS(s#unique identifier of the component.tiN( tidtnametdir_nametpatht file_pathtpath_idtNonetmodulet modulesizet last_modifiedtintttime(tselfRR ((s2/usr/lib/python2.6/site-packages/myghty/csource.pyt__init__s         cCstS(N(tTrue(R((s2/usr/lib/python2.6/site-packages/myghty/csource.pyt can_compile2scCs tƒ‚dS(N(tNotImplementedError(R((s2/usr/lib/python2.6/site-packages/myghty/csource.pytget_component_source_file4scCs tƒ‚dS(N(R(R((s2/usr/lib/python2.6/site-packages/myghty/csource.pytget_component_source6sc Cs2|id|iƒd|id|d|iƒdS(shcompiles the source of this component using the given compiler, sending output to the given filetsourceRtfilet input_fileN(tcompileRRR(RtcompilerR((s2/usr/lib/python2.6/site-packages/myghty/csource.pytget_object_code8s    N( t__name__t __module__t__doc__RRRRRR(((s2/usr/lib/python2.6/site-packages/myghty/csource.pyRs     tModuleComponentSourceSingletoncBseZdZd„ZRS(sŒa metaclass for ModuleComponentSource which allows its constructor to cache the inspection results of the "arg" constructor parameter. cKsµ|iddƒ}|iddƒ}|idtƒ}|dj o^|dj oQy||}Wn/tj o#ti||}|||RR8R4R tmodnametobjnamett((s2/usr/lib/python2.6/site-packages/myghty/csource.pyRYs4      6 #  cCs^|idjodS||_|}x |iD]}t||ƒ}q.W|i||iƒdS(N(R>RR R2R3(RR RRA((s2/usr/lib/python2.6/site-packages/myghty/csource.pytreload†s  cCs†t|_d|_d|_t|tiƒpt|tiƒo||_d|i }n(t|ti ƒoM||_|dj odt i |dƒ}nd|i i }t|_nÈt|tiƒoA||_|dj odt i |dƒ}q‚d|i }ntt|ƒoV|i}||_|dj odt i |dƒ}nd|ii }t|_ndt|ƒ‚|S(Nsclass:smethod:t_s function:s callable:sarg is (R$R7RR4R8R.R:tTypeTypet ClassTypeRR;tstringtjointim_funcRR<tcallableR't __class__trepr(RRR>R((s2/usr/lib/python2.6/site-packages/myghty/csource.pyR3”s4   &           c Cs`|o |i}nti|iƒ}td|id|id|id|id|id|ƒS(NR R>R8RR4R ( R R1t modulemodtimeR R+R>R8RR4(RR!R ((s2/usr/lib/python2.6/site-packages/myghty/csource.pyR(·s cCstS(N(R$(R((s2/usr/lib/python2.6/site-packages/myghty/csource.pyR¿sN( RRRRt __metaclass__RRRBR3R$R(R(((s2/usr/lib/python2.6/site-packages/myghty/csource.pyR+Ss &  # tMemoryComponentSourcecBs)eZddd„Zd„Zd„ZRS(cCsF|djotti|ƒƒ}nti|||ƒ||_dS(N(RR/tbuiltinRRRR(RRRR ((s2/usr/lib/python2.6/site-packages/myghty/csource.pyRÄs cCsti|iƒS(N(tutiltStringIOR(R((s2/usr/lib/python2.6/site-packages/myghty/csource.pyRËscCs|iS(N(R(R((s2/usr/lib/python2.6/site-packages/myghty/csource.pyRÎsN(RRRRRR(((s2/usr/lib/python2.6/site-packages/myghty/csource.pyRNÃs tFileComponentSourcecBs&eZdd„Zd„Zd„ZRS(cCst|djoti|ƒti}nti|||ƒ||_||_||_t i |ƒ\|_ |_ dS(N( RtoststattST_MTIMERRRRRtunixpathR0RR(RRRRRR ((s2/usr/lib/python2.6/site-packages/myghty/csource.pyRÓs    cCs t|iƒS(N(topenR(R((s2/usr/lib/python2.6/site-packages/myghty/csource.pyRÝscCs|iƒiƒS(N(Rtread(R((s2/usr/lib/python2.6/site-packages/myghty/csource.pyRàsN(RRRRRR(((s2/usr/lib/python2.6/site-packages/myghty/csource.pyRRÒs (t posixpathRVR treRSRTR:R5RFt __builtin__ROt myghty.utilRPtmyghty.importerR1tmyghty.exceptiont exceptiontobjectRR&RR+RNRR(((s2/usr/lib/python2.6/site-packages/myghty/csource.pyt s T 1p