e dZddlmZddlmZddlmZddlmZgdZGddejZ Gd d ejZ Gd d ejZ Gd dejZ Gdde ZeeeGddej ZGddej$ZGddej(Zy)z Interface definitions for builtin types. After this module is imported, the standard library types will declare that they implement the appropriate interface. .. versionadded:: 5.0.0 )classImplements) collections)numbers)io)IListITuple ITextString IByteString INativeStringIBoolIDictIFileceZdZdZefZddZy)rz% Interface for :class:`list` Ncy)zs Sort the list in place and return None. *key* and *reverse* must be passed by name only. N)keyreverses @/usr/lib/python3/dist-packages/zope/interface/common/builtins.pysortz IList.sort-s)NF)__name__ __module__ __qualname____doc__list extra_classesrrrrrr'sGM rrceZdZdZefZy)rz& Interface for :class:`tuple` N)rrrrtuplerrrrrr5sHMrrceZdZdZefZy)r zK Interface for text ("unicode") strings. This is :class:`str` N)rrrrstrrrrrr r <s FMrr ceZdZdZefZy)r z Interface for immutable byte strings. On all Python versions this is :class:`bytes`. Unlike :class:`zope.interface.common.collections.IByteString` (the parent of this interface) this does *not* include :class:`bytearray`. N)rrrrbytesrrrrr r EsHMrr ceZdZdZy)r z Interface for native strings. On all Python versions, this is :class:`str`. Tt extends :class:`ITextString`. N)rrrrrrrr r Rsrr ceZdZdZefZy)r z% Interface for :class:`bool` N)rrrrboolrrrrr r ]GMrr ceZdZdZefZy)r z% Interface for :class:`dict` N)rrrrdictrrrrr r dr&rr ceZdZdZdZy)ra Interface for :class:`file`. It is recommended to use the interfaces from :mod:`zope.interface.common.io` instead of this interface. On Python 3, there is no single implementation of this interface; depending on the arguments, the :func:`open` builtin can return many different classes that implement different interfaces from :mod:`zope.interface.common.io`. rN)rrrrrrrrrrks MrrN)rzope.interfacerzope.interface.commonrrr__all__IMutableSequencer ISequencerr r r r IIntegralr IMutableMappingr IIOBaserrrrr2s+-)$   K ( (  [ " "+'' +)) K]#G  K ' ' BJJ r