Skip to main content

the ioc container useful for Interface oriented programming

Project description

Ghoshell Container

IoC container for GhostInShells.

IoC Container

GhostInShells follows the concept of interface-oriented programming to build the project. Most modules are divided into interface and implementation. Register and get implementations by IoC Container.

About IoC: Inverse of Control

Installation

pip install ghoshell-container

Features

  • set and get, and type check by fetch, force_fetch
  • alias: set alias for contract
  • bind with factory function, subclass, instance e.t.c
  • dict interface
  • factory class Provider registrar
  • boostrap and shutdown
  • container bloodline inheritance
  • make: recursively dependencies injection for class
  • call: recursively dependencies injection for function
  • get_container and set_container by contextvars
  • depends: function decorator
  • Inject : class property injection
  • DeclaredContainer: auto bindings by property

see them in examples

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ghoshell_container-0.3.0.dev0.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ghoshell_container-0.3.0.dev0-py3-none-any.whl (12.5 kB view details)

Uploaded Python 3

File details

Details for the file ghoshell_container-0.3.0.dev0.tar.gz.

File metadata

File hashes

Hashes for ghoshell_container-0.3.0.dev0.tar.gz
Algorithm Hash digest
SHA256 033ef3103fe93a28e7f516467b8ce67bf1d5870228431c64388936c4c745e492
MD5 7fc1ce9898ad04aa88c7ff07c75f0c8c
BLAKE2b-256 85e41d4f2a15c7f4aaeb0545739d738fd70a46316c6303ed31935e4eea930586

See more details on using hashes here.

File details

Details for the file ghoshell_container-0.3.0.dev0-py3-none-any.whl.

File metadata

File hashes

Hashes for ghoshell_container-0.3.0.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 22878c1e8f54296954d874cbb72dd8770907b787dc05fd794e428d0402b6d09a
MD5 0f0e052972b21891a682c22a010b5b0a
BLAKE2b-256 2110e67cd52cedae88e17d83ca7d476072733134d1d8f27ff6dc0e89db51c058

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page