Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.11/site-packages/multidict/__init__.py: 94%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

16 statements  

1""" 

2Multidict implementation. 

3 

4HTTP Headers and URL query string require specific data structure: 

5multidict. It behaves mostly like a dict but it can have 

6several values for the same key. 

7""" 

8 

9from typing import TYPE_CHECKING 

10 

11from ._abc import MultiMapping, MutableMultiMapping 

12from ._compat import USE_EXTENSIONS 

13 

14__all__ = ( 

15 "CIMultiDict", 

16 "CIMultiDictProxy", 

17 "MultiDict", 

18 "MultiDictProxy", 

19 "MultiMapping", 

20 "MutableMultiMapping", 

21 "getversion", 

22 "istr", 

23 "upstr", 

24) 

25 

26__version__ = "6.7.0" 

27 

28 

29if TYPE_CHECKING or not USE_EXTENSIONS: 

30 from ._multidict_py import ( 

31 CIMultiDict, 

32 CIMultiDictProxy, 

33 MultiDict, 

34 MultiDictProxy, 

35 getversion, 

36 istr, 

37 ) 

38else: 

39 from collections.abc import ItemsView, KeysView, ValuesView 

40 

41 from ._multidict import ( 

42 CIMultiDict, 

43 CIMultiDictProxy, 

44 MultiDict, 

45 MultiDictProxy, 

46 _ItemsView, 

47 _KeysView, 

48 _ValuesView, 

49 getversion, 

50 istr, 

51 ) 

52 

53 MultiMapping.register(MultiDictProxy) 

54 MutableMultiMapping.register(MultiDict) 

55 KeysView.register(_KeysView) 

56 ItemsView.register(_ItemsView) 

57 ValuesView.register(_ValuesView) 

58 

59 

60upstr = istr