Lithe\Console\Line
A classe `Line` gerencia e executa comandos de console no Lithe, integrando-se com o Symfony Console. Ela permite registrar, criar e executar comandos personalizados de maneira eficiente.
Métodos
use(array $commands)
-
Descrição: Registra múltiplos comandos para a aplicação de console.
-
Parâmetros:
$commands
: Um array de instâncias de comandos (SymfonyCommand
). Cada item deve ser uma instância válida deSymfonyCommand
.
-
Exceções:
InvalidArgumentException
: Se algum item no array não for uma instância deSymfonyCommand
.
Line::use([
$ServeCommand,
$migrateCommand
]);
listen(array $args = [])
-
Descrição: Executa a aplicação de console com base nos argumentos fornecidos.
-
Parâmetros:
$args
(opcional): Argumentos da linha de comando que serão processados pela aplicação de console.
-
Retorna: Um código de status (
int
), onde0
significa sucesso e1
indica uma falha.
$status = Line::listen($argv);
create(string $name, string $description, callable $handler, array $arguments = [], array $options = [])
-
Descrição: Cria um comando de console personalizado.
-
Parâmetros:
$name
: O nome do comando.$description
: A descrição do comando.$handler
: Função de callback executada quando o comando é chamado.$arguments
(opcional): Argumentos para o comando.$options
(opcional): Opções para o comando.
-
Retorna: Um objeto do tipo
SymfonyCommand
.
$command = Line::create(
'make:migration',
'Create a new migration file',
function(InputInterface $input, OutputInterface $output) {
$output->writeln('Migration created!');
return 0;
}
);