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
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)
Built Distributions
Close
Hashes for multidict-1.0.0a0-cp35-cp35m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b0980fce404e0792b2d9213f2bbdb9c76d5be54f17585f805255c8b08e838adc |
|
MD5 | b776186f03af30941ef916d158dfd05a |
|
BLAKE2b-256 | 779ddc4c8aa236a0ddb075ea4869f960024bea28561c7697481789e6a61c4392 |
Close
Hashes for multidict-1.0.0a0-cp35-cp35m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d96c576c1fc6876cdd7ab2434ba01f7c86dbd114c15475abf2740ca251c5fd44 |
|
MD5 | 3f3c07452688e4218396439d3ec13ad1 |
|
BLAKE2b-256 | 6b8891346b2993aefe3b75a6d4d4a9199a292d536c27b590d9a07a8073f5412f |
Close
Hashes for multidict-1.0.0a0-cp34-cp34m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 14a6a4ca12244714c586281f23fd14540d32f7cac356c173d3a27542bc57d31a |
|
MD5 | adaadc196e7d1d56585b408af6ccd748 |
|
BLAKE2b-256 | 15a5ebba5ebeb93db8d8a23d446721e0cb1ca455b7d6881e2c7c68ae0e5a17f8 |
Close
Hashes for multidict-1.0.0a0-cp34-cp34m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd876e98431b510a0469022ce99c4ff92191db95f127f1ce5c6db3d97dfeeb95 |
|
MD5 | 99846c24e9e9ffb47d946dc36a18051f |
|
BLAKE2b-256 | fe166808fdb7638a3c39261aa053d2a9f1c864bb452294dbbfc66378192df2f8 |