OpenQuizz
Une application de gestion des contenus pédagogiques
HeaderSet Class Reference
Inheritance diagram for HeaderSet:
Collaboration diagram for HeaderSet:

Public Member Functions

def __init__ (self, headers=None, on_update=None)
 
def add (self, header)
 
def remove (self, header)
 
def update (self, iterable)
 
def discard (self, header)
 
def find (self, header)
 
def index (self, header)
 
def clear (self)
 
def as_set (self, preserve_casing=False)
 
def to_header (self)
 
def __getitem__ (self, idx)
 
def __delitem__ (self, idx)
 
def __setitem__ (self, idx, value)
 
def __contains__ (self, header)
 
def __len__ (self)
 
def __iter__ (self)
 
def __nonzero__ (self)
 
def __str__ (self)
 
def __repr__ (self)
 

Data Fields

 on_update
 

Detailed Description

Similar to the :class:`ETags` class this implements a set-like structure.
Unlike :class:`ETags` this is case insensitive and used for vary, allow, and
content-language headers.

If not constructed using the :func:`parse_set_header` function the
instantiation works like this:

>>> hs = HeaderSet(['foo', 'bar', 'baz'])
>>> hs
HeaderSet(['foo', 'bar', 'baz'])

Constructor & Destructor Documentation

◆ __init__()

def __init__ (   self,
  headers = None,
  on_update = None 
)

Member Function Documentation

◆ __contains__()

def __contains__ (   self,
  header 
)

◆ __delitem__()

def __delitem__ (   self,
  idx 
)

◆ __getitem__()

def __getitem__ (   self,
  idx 
)

◆ __iter__()

def __iter__ (   self)

◆ __len__()

def __len__ (   self)

◆ __nonzero__()

def __nonzero__ (   self)

◆ __repr__()

def __repr__ (   self)

◆ __setitem__()

def __setitem__ (   self,
  idx,
  value 
)

◆ __str__()

def __str__ (   self)

◆ add()

def add (   self,
  header 
)
Add a new header to the set.

◆ as_set()

def as_set (   self,
  preserve_casing = False 
)
Return the set as real python set type.  When calling this, all
the items are converted to lowercase and the ordering is lost.

:param preserve_casing: if set to `True` the items in the set returned
                will have the original case like in the
                :class:`HeaderSet`, otherwise they will
                be lowercase.

◆ clear()

def clear (   self)
Clear the set.

◆ discard()

def discard (   self,
  header 
)
Like :meth:`remove` but ignores errors.

:param header: the header to be discarded.

◆ find()

def find (   self,
  header 
)
Return the index of the header in the set or return -1 if not found.

:param header: the header to be looked up.

◆ index()

def index (   self,
  header 
)
Return the index of the header in the set or raise an
:exc:`IndexError`.

:param header: the header to be looked up.

◆ remove()

def remove (   self,
  header 
)
Remove a header from the set.  This raises an :exc:`KeyError` if the
header is not in the set.

.. versionchanged:: 0.5
    In older versions a :exc:`IndexError` was raised instead of a
    :exc:`KeyError` if the object was missing.

:param header: the header to be removed.

◆ to_header()

def to_header (   self)
Convert the header set into an HTTP header string.

◆ update()

def update (   self,
  iterable 
)
Add all the headers from the iterable to the set.

:param iterable: updates the set with the items from the iterable.

Field Documentation

◆ on_update

on_update

The documentation for this class was generated from the following file: