stellarwp/container-contract

StellarWP Container Interface

1.1.1 2023-09-05 20:08 UTC

This package is auto-updated.

Last update: 2024-10-05 22:34:50 UTC


README

Service Container interface for use in StellarWP libraries.

Note that this is not a Container implementation of its own. It is merely abstractions that describe the components of a Dependency Injection Container.

Installation

It's recommended that you install this contract as a project dependency via Composer:

composer require stellarwp/container-contract

Note: If you typically use a tool like Strauss, you should not customize the namespace of this library in order to have proper compatibility with StellarWP libraries.

Usage

Simply use the ContainerInterface and implement it or use it as a type hint.

use StellarWP\ContainerContract\ContainerInterface;

class Container implements ContainerInterface {
	public function bind( string $id, $implementation ) {}
	public function get( string $id ) {}
	public function has( string $id ) {}
	public function singleton( string $id, $implementation ) {}
}

Example wrappers of other containers