Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
contego / home / tvault / .virtenv / lib / python2.7 / site-packages / webob / acceptparse.pyc
Size: Mime:
ó
¨‹EYc@s÷dZddlZddlmZddlmZejdƒZde	fd„ƒYZ
de	fd	„ƒYZd
efd„ƒYZde
fd
„ƒYZ
de
fd„ƒYZde
fd„ƒYZdefd„ƒYZd„Ze
ed„ZdS(sÚ
Parses a variety of ``Accept-*`` headers.

These headers generally take the form of::

    value1; q=0.5, value2; q=0

Where the ``q`` parameter is optional.  In theory other parameters
exists, but this ignores them.
iÿÿÿÿN(t_trans_name(theader_docstrings*,\s*([^\s;,\n]+)(?:[^,]*?;\s*q=([0-9.]*))?tAcceptcBs€eZdZd„Zed„ƒZd„Zd„Zd„Ze	d„Z
d„Zd„Zd	d
„Z
d
d„Zd„ZRS(s´
    Represents a generic ``Accept-*`` style header.

    This object should not be modified.  To add items you can use
    ``accept_obj + 'accept_thing'`` to get a new object
    cCsV||_t|j|ƒƒ|_g|jD]\}}|r+||f^q+|_dS(N(theader_valuetlisttparset_parsedt_parsed_nonzero(tselfRtmtq((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyt__init__s	ccs°x©tjd|ƒD]”}|jdƒ}|dkr;qn|jdƒpMd}|ry0ttt|ƒdƒdƒ}||fVwWqtk
r™qXn|dfVqWdS(s
        Parse ``Accept-*`` style header.

        Return iterator of ``(value, quality)`` pairs.
        ``quality`` defaults to 1.
        t,iR
itiN(tpart_retfinditertgrouptmaxtmintfloatt
ValueError(tvaluetmatchtnametquality((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR#s
cCsd|jjt|ƒfS(Ns<%s(%r)>(t	__class__t__name__tstr(R((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyt__repr__9sccs8x1t|jdd„dtƒD]\}}|VqWdS(NtkeycSs|dS(Ni((ti((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyt<lambda>?streverse(tsortedRtTrue(RR	R
((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyt__iter__<s
		cCs~g}xh|jD]]\}}|dkr`d|ttt|ƒjdƒdƒdƒ|f}n|j|ƒqWdj|ƒS(Nis
%s;q=%0.*ft.is, (RRtlenRtsplittappendtjoin(RtresulttmaskR((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyt__str__Ds5c	Cs2t|tƒr|j}nt|dƒrHt|jƒdd„ƒ}nt|ttfƒrÎg}xV|D]N}t|ttfƒr«|\}}|jd||fƒqj|j|ƒqjWdj	|ƒ}nt
|ƒ}|j}|rù||}}n|s|}n|s|}n|d|}|j|ƒS(NtitemsRcSs	|dS(Ni((titem((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRQss%s; q=%ss, (t
isinstanceRRthasattrR!R,RttupleR'R(RR(	RtothertreversedR)R-RRtmy_valuet	new_value((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyt__add__Ms,
			cCs|j|tƒS(N(R5R"(RR1((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyt__radd__gscCs4x-|jD]"\}}|j||ƒr
tSq
WdS(s[
        Returns true if the given object is listed in the accepted
        types.
        N(Rt_matchR"(RtofferR*R((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyt__contains__jsicCsRd}x?|jD]4\}}|j||ƒrt|||ƒ}qqW|pQdS(sl
        Return the quality of the given offer.  Returns None if there
        is no match (not 0).
        iN(RR7RtNone(RR8tmodifiertbestqR*R
((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRss
cCsád}|}d}xÈ|D]À}t|ttfƒrC|\}}nd}x|jD]‚\}}	||	}
|
|kr{qSn3|
|kr®|jdƒ|jdƒkr®qSq®n|j||ƒrS|
}|}|}qSqSWqW|S(s¤
        Returns the best match in the sequence of offered types.

        The sequence can be a simple sequence, or you can have
        ``(match, server_quality)`` items in the sequence.  If you
        have these tuples then the client quality is multiplied by the
        server_quality to get a total.  If two matches have equal
        weight, then the one that shows up first in the `offers` list
        will be returned.

        But among matches with the same quality the match to a more specific
        requested type will be chosen. For example a match to text/* trumps */*.

        default_match (default None) is returned if there is no intersection.
        iÿÿÿÿs*/*it*(R.R0RRtcountR7(Rtofferst
default_matchtbest_qualityt
best_offert
matched_byR8tserver_qualityR*Rtpossible_quality((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyt
best_match~s&

	cCs,t|ƒ|dkp+|jƒ|jƒkS(NR=(t_check_offertlower(RR*R8((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR7¥s
N(Rt
__module__t__doc__RtstaticmethodRRR#R+tFalseR5R6R9RR:RFR7(((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRs								't	NilAcceptcBskeZeZd„Zd„Zd„ZeZd„Zd„Z	d„Z
d„Zdd„Zd
d	„ZRS(cCsd|jj|jfS(Ns<%s: %s>(RRtMasterClass(R((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR­scCsdS(NR
((R((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR+°scCstS(N(RL(R((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyt__nonzero__³scCs
tdƒS(N((titer(R((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR#·scCs+t||jƒr|S|jdƒ|SdS(NR
(R.RN(RR-((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR5ºscCs+t||jƒr|S||jdƒSdS(NR
(R.RN(RR-((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR6ÀscCst|ƒtS(N(RGR"(RR-((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR9Æs
icCsdS(Ni((RR8tdefault_quality((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRÊscCspd}|}x]|D]U}t|ƒt|ttfƒrG|\}}nd}||kr|}|}qqW|S(Niÿÿÿÿi(RGR.RR0(RR?R@RARBR8R((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRFÍs


N(RRIRRNRR+ROt__bool__R#R5R6R9RR:RF(((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRMªs							tNoAcceptcBseZd„ZRS(cCstS(N(RL(RR-((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR9Üs(RRIR9(((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRSÛst
AcceptCharsetcBseZed„ƒZRS(ccspt}xUtj|ƒD]D\}}|jƒ}|dksF|dkrOt}n||fVqW|sldVndS(NR=s
iso-8859-1i(s
iso-8859-1i(RLRRRHR"(Rtlatin1_foundR	R
t_m((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRàs	(RRIRKR(((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRTßstAcceptLanguagecBseZd„ZRS(cCsl|jddƒjƒ}|jƒ}|dkpk||kpk|jdƒd|kpk||jdƒdkS(Nt_t-R=i(treplaceRHR&(RR*R-((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR7ìs(RRIR7(((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRWëst
MIMEAcceptcBs;eZdZed„ƒZd„ZeeƒZd„ZRS(sŽ
        Represents the ``Accept`` header, which is a list of mimetypes.

        This class knows about mime wildcards, like ``image/*``
    ccsÜxÕtj|ƒD]Ä\}}y2g|jdƒD]}|jƒ^q/\}}Wntk
rdqnX|dkrƒ|dkrƒqn|dkr¡d|kr¡qn|dkr¿d|kr¿qnd||f|fVqWdS(Nt/R=s%s/%s(RRR&RHR(RR*R
txt
mask_majort
mask_minor((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRüs2
cCs.d|kp-d|kp-d|kp-d|kS(s@
        Returns true if any HTML-like type is accepted
        s	text/htmlsapplication/xhtml+xmlsapplication/xmlstext/xml((R((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pytaccept_htmlscCs¢|jƒ|jƒks6d||fks6d|kr:tSy2g|jdƒD]}|jƒ^qM\}}Wntk
r‹|}d}nXy2g|jdƒD]}|jƒ^qŸ\}}Wntk
rÝ|}d}nX|dkr|dkrútS|jƒ|jƒkSn|dkrH|dkr/tS|jƒ|jƒkSn|dkrj|jƒ|jƒkS|dkrŒ|jƒ|jƒkS|jƒ|jƒkS(sq
            Check if the offer is covered by the mask

            ``offer`` may contain wildcards to facilitate checking if a
            ``mask`` would match a 'permissive' offer.

            Wildcard matching forces the match to take place against the
            type or subtype of the mask and offer (depending on where
            the wildcard matches)
        s*/*R=R\(RHR"R&R(RR*R8R]t	mask_typetmask_subtypet
offer_typet
offer_subtype((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR7s62

2

(	RRIRJRKRR`tpropertytaccepts_htmlR7(((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyR[ös
		t
MIMENilAcceptcBseZeZRS((RRIR[RN(((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRgOscCs#d|krtd|ƒ‚ndS(NR=s3The application should offer specific types, got %r(R(R8((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyRGRscsdt|ƒ‰t||ƒ}‡‡‡fd†}‡‡fd†}‡fd†}t||||ƒS(Ncs)|jjˆƒ}|sˆƒSˆ|ƒS(N(tenvirontget(treqR(tAcceptClasstNilClassR(sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pytfget]scsW|r@t|tttfƒr1ˆdƒ|}nt|ƒ}n|pId|jˆ<dS(NR
(R.RR0tdictRR:Rh(Rjtval(RkR(sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pytfsetbs
cs|jˆ=dS(N(Rh(Rj(R(sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pytfdelhs(t
header_to_keyRRe(theadertrfc_sectionRkRltdocRmRpRq((RkRlRsF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pytaccept_propertyWs(RJtret
webob.headersRRrt
webob.utilRtcompileRtobjectRRMRSRTRWR[RgRGRv(((sF/home/tvault/.virtenv/lib/python2.7/site-packages/webob/acceptparse.pyt<module>
s	”1Y