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.dev2.tar.gz (16.8 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.dev2-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for ghoshell_container-0.3.0.dev2.tar.gz
Algorithm Hash digest
SHA256 f9b3d1aabf7187612d897b8d8f0fc87e50aacd46c312b2d0bd13eb99c225bed5
MD5 954b75cef85aa5febaf11742aa9f4742
BLAKE2b-256 cfc17c846b70f112fc7f110f8c49279d4af716087ffe045e329505dd3f2ff18a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ghoshell_container-0.3.0.dev2-py3-none-any.whl
Algorithm Hash digest
SHA256 971a12e36467239e4be81196635172175085ca17f051ba25bba9b39eac9e0128
MD5 c8a447c7ddbda586b9214c7719714781
BLAKE2b-256 6eeba4a742b943914b422e14cf9a887007b1dd98cfa615943a26108f8cbe339b

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