%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/
Upload File :
Create Path :
Current File : //opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyo

�
|��Wc@sUdZdgZdefd��YZdefd��YZdefd��YZdS(s
Helper for looping over sequences, particular in templates.

Often in a loop in a template it's handy to know what's next up,
previously up, if this is the first or last item in the sequence, etc.
These can be awkward to manage in a normal Python loop, but using the
looper you can get a better sense of the context.  Use like::

    >>> for loop, item in looper(['a', 'b', 'c']):
    ...     print loop.number, item
    ...     if not loop.last:
    ...         print '---'
    1 a
    ---
    2 b
    ---
    3 c

tloopercBs)eZdZd�Zd�Zd�ZRS(s�
    Helper for looping (particularly in templates)
    
    Use this like::
    
        for loop, item in looper(seq):
            if loop.first:
                ...
    cCs
||_dS(N(tseq(tselfR((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyt__init__"scCs
t|j�S(N(tlooper_iterR(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyt__iter__%scCsd|jj|jfS(Ns<%s for %r>(t	__class__t__name__R(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyt__repr__(s(Rt
__module__t__doc__RRR(((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyRs			RcBs#eZd�Zd�Zd�ZRS(cCst|�|_d|_dS(Ni(tlistRtpos(RR((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyR.scCs|S(N((R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyR2scCsY|jt|j�kr!t�nt|j|j�|j|jf}|jd7_|S(Ni(RtlenRt
StopIterationtloop_pos(Rtresult((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pytnext5s
	%(RR	RRR(((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyR,s		RcBs
eZd�Zd�Zd�Zee�Zd�Zee�Zd�Zee�Zd�Zee�Zd�Z	ee	�Z	d�Z
ee
�Z
d�Zee�Zd	�Zee�Zd
�Z
ee
�Z
d�Zee�Zdd�Zdd
�Zd�ZRS(cCs||_||_dS(N(RR(RRR((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyR>s	cCsd|jttfS(Ns<loop pos=%r at %r>(RR(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyRBscCs|jS(N(R(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pytindexFscCs|jdS(Ni(R(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pytnumberJscCs|j|jS(N(RR(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pytitemNscCs/y|j|jdSWntk
r*dSXdS(Ni(RRt
IndexErrortNone(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyRRs
cCs%|jdkrdS|j|jdS(Nii(RRR(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pytpreviousYscCs|jdS(Ni(R(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pytodd_scCs|jdS(Ni(R(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pytevencscCs
|jdkS(Ni(R(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pytfirstgscCs|jt|j�dkS(Ni(RR
R(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pytlastkscCs
t|j�S(N(R
R(R((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pytlengthoscCs&|jr
tS|j|j|j|�S(s
        Returns true if this item is the start of a new group,
        where groups mean that some attribute has changed.  The getter
        can be None (the item itself changes), an attribute name like
        ``'.attr'``, a function, or a dict key or list index.
        (RtTruet_compare_groupRR(Rtgetter((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pytfirst_groupss	cCs&|jr
tS|j|j|j|�S(s
        Returns true if this item is the end of a new group,
        where groups mean that some attribute has changed.  The getter
        can be None (the item itself changes), an attribute name like
        ``'.attr'``, a function, or a dict key or list index.
        (RRRRR(RR((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyt
last_group~s	cCs�|dkr||kSt|t�r�|jd�r�|d}|jd�ry|d }t||��t||��kSt||�t||�kSn4t|�r�||�||�kS||||kSdS(Nt.is()i����(Rt
isinstancet
basestringt
startswithtendswithtgetattrtcallable(RRtotherR((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyR�s


"N(RR	RRRtpropertyRRRRRRRRRRR R!R(((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyR<s2												N(R
t__all__tobjectRRR(((sJ/opt/alt/python27/lib/python2.7/site-packages/paste/util/looper/_looper.pyt<module>s	

Zerion Mini Shell 1.0