PHP 8.3.31
Preview: CliDumper.php Size: 3.28 KB
/home/getspomw/royalsquad.us/vendor/laravel/framework/src/Illuminate/Foundation/Console/CliDumper.php

<?php

namespace Illuminate\Foundation\Console;

use Illuminate\Foundation\Concerns\ResolvesDumpSource;
use Symfony\Component\Console\Output\ConsoleOutput;
use Symfony\Component\VarDumper\Caster\ReflectionCaster;
use Symfony\Component\VarDumper\Cloner\Data;
use Symfony\Component\VarDumper\Cloner\VarCloner;
use Symfony\Component\VarDumper\Dumper\CliDumper as BaseCliDumper;
use Symfony\Component\VarDumper\VarDumper;

class CliDumper extends BaseCliDumper
{
    use ResolvesDumpSource;

    /**
     * The base path of the application.
     *
     * @var string
     */
    protected $basePath;

    /**
     * The output instance.
     *
     * @var \Symfony\Component\Console\Output\OutputInterface
     */
    protected $output;

    /**
     * The compiled view path for the application.
     *
     * @var string
     */
    protected $compiledViewPath;

    /**
     * If the dumper is currently dumping.
     *
     * @var bool
     */
    protected $dumping = false;

    /**
     * Create a new CLI dumper instance.
     *
     * @param  \Symfony\Component\Console\Output\OutputInterface  $output
     * @param  string  $basePath
     * @param  string  $compiledViewPath
     * @return void
     */
    public function __construct($output, $basePath, $compiledViewPath)
    {
        parent::__construct();

        $this->basePath = $basePath;
        $this->output = $output;
        $this->compiledViewPath = $compiledViewPath;

        $this->setColors($this->supportsColors());
    }

    /**
     * Create a new CLI dumper instance and register it as the default dumper.
     *
     * @param  string  $basePath
     * @param  string  $compiledViewPath
     * @return void
     */
    public static function register($basePath, $compiledViewPath)
    {
        $cloner = tap(new VarCloner())->addCasters(ReflectionCaster::UNSET_CLOSURE_FILE_INFO);

        $dumper = new static(new ConsoleOutput(), $basePath, $compiledViewPath);

        VarDumper::setHandler(fn ($value) => $dumper->dumpWithSource($cloner->cloneVar($value)));
    }

    /**
     * Dump a variable with its source file / line.
     *
     * @param  \Symfony\Component\VarDumper\Cloner\Data  $data
     * @return void
     */
    public function dumpWithSource(Data $data)
    {
        if ($this->dumping) {
            $this->dump($data);

            return;
        }

        $this->dumping = true;

        $output = (string) $this->dump($data, true);
        $lines = explode("\n", $output);

        $lines[array_key_last($lines) - 1] .= $this->getDumpSourceContent();

        $this->output->write(implode("\n", $lines));

        $this->dumping = false;
    }

    /**
     * Get the dump's source console content.
     *
     * @return string
     */
    protected function getDumpSourceContent()
    {
        if (is_null($dumpSource = $this->resolveDumpSource())) {
            return '';
        }

        [$file, $relativeFile, $line] = $dumpSource;

        $href = $this->resolveSourceHref($file, $line);

        return sprintf(
            ' <fg=gray>// <fg=gray%s>%s%s</></>',
            is_null($href) ? '' : ";href=$href",
            $relativeFile,
            is_null($line) ? '' : ":$line"
        );
    }

    /**
     * {@inheritDoc}
     */
    protected function supportsColors(): bool
    {
        return $this->output->isDecorated();
    }
}

Directory Contents

Dirs: 1 × Files: 64

Name Size Perms Modified Actions
stubs DIR
- drwxrwxrwx 2025-09-17 06:52:55
Edit Download
9.83 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
4.96 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
6.75 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.85 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
4.29 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.67 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.60 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
948 B lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
3.28 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.93 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
4.56 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.12 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.16 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
3.11 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.89 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.47 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
13.40 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
4.88 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
3.56 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
726 B lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
3.87 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
3.84 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.46 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.19 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.07 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
5.66 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.96 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.91 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.07 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.52 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.94 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.81 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
16.53 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
3.16 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.82 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
4.16 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
5.98 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
9.49 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
4.47 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
4.42 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.06 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.04 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.05 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
6.01 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.21 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.01 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.69 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.39 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.73 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.14 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
15.29 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.00 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.70 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
11.62 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.06 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.21 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
5.88 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
3.90 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.81 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.41 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
10.76 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
2.82 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
1.52 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download
6.16 KB lrw-rw-rw- 2025-09-17 06:52:55
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).