Metadata-Version: 2.1
Name: tricky
Version: 0.0.6a0
Summary: A set of useful features to make working with your code easier.
Home-page: https://github.com/Walther-s-Engineering/tricky
License: MIT
Keywords: tools
Author: Alexander Walther
Author-email: alexander.walther.engineering@gmail.com
Requires-Python: >=3.8,<4.0
Classifier: Development Status :: 1 - Planning
Classifier: Environment :: Console
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Utilities
Provides-Extra: pydantic
Requires-Dist: pydantic (==1.10.4) ; extra == "pydantic"
Description-Content-Type: text/markdown

# tricky - that's about python.

This module is simply a collection of useful code, utilities, and functions to simplify your work with the language and the tasks you solve.

## Collection:
1. Iterables module `tricky.iterables`
2. Typing `tricky.typing` (wip)


## Examples:

1. Example of **iterables.filter_item**
    ```python
    from tricky.iterables import filter_item
    
    numbers = range(1000)
    result: int = filter_item(
        numbers,  # the iterable
        lambda number: number == 342,  # condition to get your item
        None,  # the default value to return, if condition not met
    )
    print(result)
    # 342
    ```

2. Example of **typing**
    ```python
    from tricky.typing import TypedList
    
    numbers = TypedList[int]([1, 2, 3, 4, 5])
    assert isinstance(numbers, list)  # True
    ```

