Metadata-Version: 2.1
Name: protocol-lib
Version: 0.2.0
Summary: Protocols for better structural typing
Home-page: https://github.com/eganjs/protocol-lib
License: MIT
Author: Joseph Egan
Author-email: joseph.s.egan@gmail.com
Requires-Python: >=3.6,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Dist: typing-extensions (>=3.7.4.3,<4.0.0.0)
Project-URL: Repository, https://github.com/eganjs/protocol-lib
Description-Content-Type: text/markdown

# protocol-lib

![Build](https://github.com/eganjs/protocol-lib/workflows/ci/badge.svg)

Protocols for better structural typing

## Goals

Implement Protocols for:
- [x] Container
- [ ] Hashable
- [ ] Iterable
- [ ] Iterator
- [ ] Reversible
- [ ] Generator
- [ ] Sized
- [ ] Callable
- [ ] Collection
- [ ] Sequence
- [ ] MutableSequence
- [ ] ByteString
- [ ] Set
- [ ] MutableSet
- [ ] Mapping
- [ ] MutableMapping
- [ ] MappingView
- [ ] ItemsView
- [ ] KeysView
- [ ] ValuesView
- [ ] Awaitable
- [ ] Coroutine
- [ ] AsyncIterable
- [ ] AsyncIterator
- [ ] AsyncGenerator

## Updating project config

To do this make edits to the `.projenrc.js` file in the root of the project and run `npx projen` to update existing or generate new config. Please also use `npx prettier --trailing-comma all --write .projenrc.js` to format this file.

