Skip to main content

multidict implementation

Project description

=========
multidict
=========

Multidicts are useful for working with HTTP headers, URL
query args etc.

The code was extracted from aiohttp library.

Introduction
------------

*HTTP Headers* and *URL query string* require specific data structure:
*multidict*. It behaves mostly like a :class:`dict` but it can have
several *values* for the same *key*.

:mod:`multidict` has four multidict classes:
:class:`MultiDict`, :class:`MultiDictProxy`, :class:`CIMultiDict`
and :class:`CIMultiDictProxy`.

Immutable proxies (:class:`MultiDictProxy` and
:class:`CIMultiDictProxy`) provide a dynamic view on the
proxied multidict, the view reflects underlying collection changes. They
implement the :class:`~collections.abc.Mapping` interface.

Regular mutable (:class:`MultiDict` and :class:`CIMultiDict`) classes
implement :class:`~collections.abc.MutableMapping` and allows to change
their own content.


*Case insensitive* (:class:`CIMultiDict` and
:class:`CIMultiDictProxy`) ones assumes the *keys* are case
insensitive, e.g.::

>>> dct = CIMultiDict(a='val')
>>> 'A' in dct
True
>>> dct['A']
'val'

*Keys* should be a :class:`str`.

The library has optional Cython optimization for sake of speed.


License
-------

Apache 2

XXXX-XX-XX
----------

* Initial implementation

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

multidict-1.0.0a0.tar.gz (309.1 kB view hashes)

Uploaded Source

Built Distributions

multidict-1.0.0a0-cp35-cp35m-win_amd64.whl (126.9 kB view hashes)

Uploaded CPython 3.5m Windows x86-64

multidict-1.0.0a0-cp35-cp35m-win32.whl (119.7 kB view hashes)

Uploaded CPython 3.5m Windows x86

multidict-1.0.0a0-cp34-cp34m-win_amd64.whl (126.6 kB view hashes)

Uploaded CPython 3.4m Windows x86-64

multidict-1.0.0a0-cp34-cp34m-win32.whl (120.8 kB view hashes)

Uploaded CPython 3.4m Windows x86

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page