public function __invoke(Container $container) { $container->set(Filesystem::class, function () { return new Filesystem(); }); $container->set(OutputFormatter::class, function () { return new OutputFormatter(); }); }
public function __invoke(Container $container) { $container->set(Cli::class, function (Container $c) { $cli = new Cli(); foreach ($c->get('commands') as $class) { $class::register($cli); } return $cli; }); $container->set(Args::class, function (Container $c) { return $c->get(Cli::class)->parse($c->get('argv'), true); }); }
protected function setEntry(Container $container, $option, $env, $default = null, $type = null) { $container->set($option, function (Container $c) use($option, $env, $default, $type) { $defaultValue = $this->env($env, $default); if ($type !== null) { $defaultValue = filter_var($defaultValue, $type); } return $c->get(Args::class)->getOpt($option, $defaultValue); }); }
protected function registerCommand(Container $container, $class, callable $factory) { $container->set($class, $factory); return ['name' => $class::$name, 'class' => $class]; }
protected function setMigrationCreator(Container $c) { $c->set(MigrationCreator::class, function (Container $c) { return new MigrationCreator($c->get(Filesystem::class)); }); }