Metadata-Version: 2.1
Name: simple-ioc
Version: 3.0
Summary: A lightweight library with an implementation of IoC
Home-page: https://github.com/agroptima/simple-ioc
Author: Agroptima S.L.
Author-email: developers@agroptima.com
License: GPLv3
Download-URL: https://github.com/agroptima/simple-ioc/releases
Keywords: python,dependency-injection,inversion-of-control
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Topic :: Utilities

# Simple IoC

[![Build Status](https://travis-ci.org/agroptima/simple-ioc.svg)](https://travis-ci.org/agroptima/simple-ioc)
[![License GPLv3](https://img.shields.io/badge/license-GPLv3-red.svg)](https://opensource.org/licenses/GPL-3.0)
![Python versions](https://img.shields.io/badge/python-3.x-blue.svg)

## Install

```
$ pipenv install simple-ioc
```

or

```
$ pip install simple-ioc
```

## Usage

In order to have the IoC (Inversion of Control) working in your application, you must register your services in the IoC container:

```python
from simple_ioc import Container

class AService:
    # Your service implementation comes here

Container().register('an_identifier', lambda: AService())
```

Then, from any point in your application, you can retrieve the service by calling `get`:

```python
a_service = Container().get('an_identifier')
```


