Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/eganjs/protocol-lib

Library of Protocols for better structural typing
https://github.com/eganjs/protocol-lib

hacktoberfest python typing

Last synced: about 1 month ago
JSON representation

Library of Protocols for better structural typing

Awesome Lists containing this project

README

        

# protocol-lib

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

Protocols for better structural typing

## Goals

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

## Notes

Generator is not currently implemented in this library. This is due to challenges encountered when attempting to implement it.

## Updating project config

To edit project configuration, update the `.projenrc.js` file in the root of the project and run `make projen`.