- Notifications
You must be signed in to change notification settings - Fork1
fluentpython/protocol_examples
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Examples usingtyping.Protocol
from PEP 544
FromPEP 333 – Python Web Server Gateway Interface v1.0 (2003):
To be considered “file-like”, the object supplied by the applicationmust have a
read()
method that takes an optional size argument.
The words "file-like" (or "file like") appear with similar implied meaningin the Python 3.12 distribution:
- 148 times in the documentation;
- 92 times in code comments (
.py
or.c
source files).
Also, 30 times across 21 PEPs (100, 214, 258, 282, 305, 310, 333, 368, 400, 441, 444, 578, 680, 691, 3116, 3119, 3143, 3145, 3154, 3156, 3333).
Definition inLib/wsgiref/types.py
:
class_Readable(Protocol):defread(self,size:int= ...,/)->bytes: ...
typing.Protocol
definitions found withripgrep
:
rg"Protocol\)" -g'*.pyi'| sort
- 120 definitions on
typeshed/stdlib
(Python standard library) - 134 definitions on
typeshed/stubs
(external packages)
importlib/resources/abc.py
:class Traversable(Protocol)
with several abstract and concrete methods, looks like an ABC but derives fromtyping.Protocol
asyncio/protocols.py
: defines classesBaseProtocol
,Protocol
etc. for network protocols
About
A PEP 544 protocol to support type hints for functions that sort
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
No releases published
Packages0
No packages published
Uh oh!
There was an error while loading.Please reload this page.