public static function unique(Closure $closure) { return function ($Container) use($closure) { static $result = null; if ($result === null) { $result = $closure($Container); } return $result; }; }
/** * */ public function testGetUnique() { $unique = Container::unique(function ($Container) { return new Containable(); }); $first = $unique($this->Container); $second = $unique($this->Container); $this->assertSame($first, $second); }