Exemple #1
0
 public function testBinding()
 {
     $injector = new Injector(null);
     $injector->bind([Binding::init(HeavyEngine::class)->lazy(), bind("AAA")->toAlias(HeavyEngine::class)]);
     $engine = $injector->get('AAA');
     $this->assertInstanceOf(Engine::class, $engine);
 }
Exemple #2
0
 /**
  * Injector constructor.
  * @param $injector
  */
 public function __construct(Injector $injector = null)
 {
     $this->injector = $injector;
     if (!$injector) {
         $this->bind(Binding::init(LazyProxyBuilder::class)->toValue(LazyProxyBuilder::init()), bind(ProxyCache::class)->toValue(ProxyCache::init()));
     }
 }
Exemple #3
0
 /**
  * @param $name
  * @param $arguments
  * @return Binding
  */
 public static function __callStatic($name, $arguments)
 {
     return Binding::init($name);
 }