Mercurial > hg > isophonics-drupal-site
diff vendor/symfony/var-dumper/Dumper/CliDumper.php @ 12:7a779792577d
Update Drupal core to v8.4.5 (via Composer)
author | Chris Cannam |
---|---|
date | Fri, 23 Feb 2018 15:52:07 +0000 |
parents | 4c8ae668cc8c |
children | 5fb285c0d0e3 |
line wrap: on
line diff
--- a/vendor/symfony/var-dumper/Dumper/CliDumper.php Fri Feb 23 15:51:18 2018 +0000 +++ b/vendor/symfony/var-dumper/Dumper/CliDumper.php Fri Feb 23 15:52:07 2018 +0000 @@ -52,6 +52,9 @@ "\033" => '\e', ); + protected $collapseNextHash = false; + protected $expandNextHash = false; + /** * {@inheritdoc} */ @@ -254,6 +257,11 @@ { $this->dumpKey($cursor); + if ($this->collapseNextHash) { + $cursor->skipChildren = true; + $this->collapseNextHash = $hasChild = false; + } + $class = $this->utf8Encode($class); if (Cursor::HASH_OBJECT === $type) { $prefix = $class && 'stdClass' !== $class ? $this->style('note', $class).' {' : '{'; @@ -370,7 +378,15 @@ break; } - $this->line .= $bin.$this->style($style, $key[1], $attr).': '; + if (isset($attr['collapse'])) { + if ($attr['collapse']) { + $this->collapseNextHash = true; + } else { + $this->expandNextHash = true; + } + } + + $this->line .= $bin.$this->style($style, $key[1], $attr).(isset($attr['separator']) ? $attr['separator'] : ': '); } else { // This case should not happen $this->line .= '-'.$bin.'"'.$this->style('private', $key, array('class' => '')).'": '; @@ -399,6 +415,21 @@ $this->colors = $this->supportsColors(); } + if (isset($attr['ellipsis'], $attr['ellipsis-type'])) { + $prefix = substr($value, 0, -$attr['ellipsis']); + if ('cli' === PHP_SAPI && 'path' === $attr['ellipsis-type'] && isset($_SERVER[$pwd = '\\' === DIRECTORY_SEPARATOR ? 'CD' : 'PWD']) && 0 === strpos($prefix, $_SERVER[$pwd])) { + $prefix = '.'.substr($prefix, strlen($_SERVER[$pwd])); + } + if (!empty($attr['ellipsis-tail'])) { + $prefix .= substr($value, -$attr['ellipsis'], $attr['ellipsis-tail']); + $value = substr($value, -$attr['ellipsis'] + $attr['ellipsis-tail']); + } else { + $value = substr($value, -$attr['ellipsis']); + } + + return $this->style('default', $prefix).$this->style($style, $value); + } + $style = $this->styles[$style]; $map = static::$controlCharsMap;