types) ) { $name = $parameters[0]; return $this->object($method, $name, $parameters[1] ?? []); } throw new Exception\InvalidTypeException(NULL, implode(', ', $this->types)); } /** * Select project name * * @param string $name * * @return bool */ public function project(string $name) : bool { return Project::generate($name); } /** * Process databases * * @return array */ public function databases() { $databases = new Databases; $databases->generate(); return $databases->info(); } /** * Generate Grand Vision * * @param mixed ...$database */ public function grandVision(...$database) { (new GrandVision)->generate(...$database); } /** * Delete Grand Vision * * @param string $databaes = '*' * @param array $tables = NULL */ public function deleteVision(string $database = '*', ?array $tables = NULL) { (new GrandVision)->delete($database, $tables); } }