Ñò
ñG“Ic @ sÊ d Z d d k Z y e Wn# e j
o d d k l Z n Xe i d ƒ Z d „ Z d e f d „ ƒ YZ d e f d „ ƒ YZ
d
e
f d „ ƒ YZ d e f d
„ ƒ YZ d e
f d „ ƒ YZ
d S( 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 sorteds* ,\s*([^\s;,\n]+)(?:[^,]*?;\s*q=([0-9.]*))?c C sà g } x¶ t i d | ƒ D]¡ } | i d ƒ } | d j o q n | i d ƒ p d } | p
d } n? y" t t t | ƒ d ƒ d ƒ } Wn t j
o
d } n X| i | | f ƒ q W| S( s–
Parses an ``Accept-*`` style header.
A list of ``[(value, quality), ...]`` is returned. ``quality``
will be 1 if it was not given.
t ,i t qi t i ( t part_ret finditert groupt maxt mint floatt
ValueErrort append( t valuet resultt matcht namet quality( ( s5 /usr/lib/python2.6/site-packages/webob/acceptparse.pyt parse_accept s
"t Acceptc B sz e Z d Z d „ Z d „ Z d „ Z e d „ Z d „ Z d „ Z d „ Z
d „ Z d d „ Z
d d
„ Z d „ Z RS(
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
c C s% | | _ | | _ t | ƒ | _ d S( N( t header_namet header_valueR t _parsed( t selfR R ( ( s5 /usr/lib/python2.6/site-packages/webob/acceptparse.pyt __init__4 s c C s/ d | i i t t | ƒ ƒ | i t | ƒ f S( Ns <%s at 0x%x %s: %s>( t __class__t __name__t abst idR t str( R ( ( s5 /usr/lib/python2.6/site-packages/webob/acceptparse.pyt __repr__9 s c C s[ g } xE | i D]: \ } } | d j o d | | f } n | i | ƒ q Wd i | ƒ S( Ni s
%s;q=%0.1fs , ( R R t join( R R
R R ( ( s5 /usr/lib/python2.6/site-packages/webob/acceptparse.pyt __str__? s
c C sF t | t ƒ o
| i } n t | d ƒ o t | i ƒ d d „ ƒ} n t | t t f ƒ ot g } xX | D]P } t | t t f ƒ o' | \ } } | i d | | f ƒ qo | i | ƒ qo Wd i | ƒ } n t
| ƒ } | i } | o | | } } n | p
| } n | p
| } n | d | } | i | i | ƒ S( Nt itemst keyc S s | d S( i ( ( t item( ( s5 /usr/lib/python2.6/site-packages/webob/acceptparse.pyt