aboutsummaryrefslogtreecommitdiff
path: root/srcs/phpmyadmin/vendor/twig/twig/src/Profiler
diff options
context:
space:
mode:
Diffstat (limited to 'srcs/phpmyadmin/vendor/twig/twig/src/Profiler')
-rw-r--r--srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/BaseDumper.php65
-rw-r--r--srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/BlackfireDumper.php74
-rw-r--r--srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/HtmlDumper.php49
-rw-r--r--srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/TextDumper.php37
-rw-r--r--srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Node/EnterProfileNode.php44
-rw-r--r--srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Node/LeaveProfileNode.php38
-rw-r--r--srcs/phpmyadmin/vendor/twig/twig/src/Profiler/NodeVisitor/ProfilerNodeVisitor.php78
-rw-r--r--srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Profile.php192
8 files changed, 0 insertions, 577 deletions
diff --git a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/BaseDumper.php b/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/BaseDumper.php
deleted file mode 100644
index 1631987..0000000
--- a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/BaseDumper.php
+++ /dev/null
@@ -1,65 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Twig\Profiler\Dumper;
-
-use Twig\Profiler\Profile;
-
-/**
- * @author Fabien Potencier <fabien@symfony.com>
- */
-abstract class BaseDumper
-{
- private $root;
-
- public function dump(Profile $profile)
- {
- return $this->dumpProfile($profile);
- }
-
- abstract protected function formatTemplate(Profile $profile, $prefix);
-
- abstract protected function formatNonTemplate(Profile $profile, $prefix);
-
- abstract protected function formatTime(Profile $profile, $percent);
-
- private function dumpProfile(Profile $profile, $prefix = '', $sibling = false): string
- {
- if ($profile->isRoot()) {
- $this->root = $profile->getDuration();
- $start = $profile->getName();
- } else {
- if ($profile->isTemplate()) {
- $start = $this->formatTemplate($profile, $prefix);
- } else {
- $start = $this->formatNonTemplate($profile, $prefix);
- }
- $prefix .= $sibling ? '│ ' : ' ';
- }
-
- $percent = $this->root ? $profile->getDuration() / $this->root * 100 : 0;
-
- if ($profile->getDuration() * 1000 < 1) {
- $str = $start."\n";
- } else {
- $str = sprintf("%s %s\n", $start, $this->formatTime($profile, $percent));
- }
-
- $nCount = \count($profile->getProfiles());
- foreach ($profile as $i => $p) {
- $str .= $this->dumpProfile($p, $prefix, $i + 1 !== $nCount);
- }
-
- return $str;
- }
-}
-
-class_alias('Twig\Profiler\Dumper\BaseDumper', 'Twig_Profiler_Dumper_Base');
diff --git a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/BlackfireDumper.php b/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/BlackfireDumper.php
deleted file mode 100644
index f333429..0000000
--- a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/BlackfireDumper.php
+++ /dev/null
@@ -1,74 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Twig\Profiler\Dumper;
-
-use Twig\Profiler\Profile;
-
-/**
- * @author Fabien Potencier <fabien@symfony.com>
- */
-final class BlackfireDumper
-{
- public function dump(Profile $profile)
- {
- $data = [];
- $this->dumpProfile('main()', $profile, $data);
- $this->dumpChildren('main()', $profile, $data);
-
- $start = sprintf('%f', microtime(true));
- $str = <<<EOF
-file-format: BlackfireProbe
-cost-dimensions: wt mu pmu
-request-start: {$start}
-
-
-EOF;
-
- foreach ($data as $name => $values) {
- $str .= "{$name}//{$values['ct']} {$values['wt']} {$values['mu']} {$values['pmu']}\n";
- }
-
- return $str;
- }
-
- private function dumpChildren(string $parent, Profile $profile, &$data)
- {
- foreach ($profile as $p) {
- if ($p->isTemplate()) {
- $name = $p->getTemplate();
- } else {
- $name = sprintf('%s::%s(%s)', $p->getTemplate(), $p->getType(), $p->getName());
- }
- $this->dumpProfile(sprintf('%s==>%s', $parent, $name), $p, $data);
- $this->dumpChildren($name, $p, $data);
- }
- }
-
- private function dumpProfile(string $edge, Profile $profile, &$data)
- {
- if (isset($data[$edge])) {
- ++$data[$edge]['ct'];
- $data[$edge]['wt'] += floor($profile->getDuration() * 1000000);
- $data[$edge]['mu'] += $profile->getMemoryUsage();
- $data[$edge]['pmu'] += $profile->getPeakMemoryUsage();
- } else {
- $data[$edge] = [
- 'ct' => 1,
- 'wt' => floor($profile->getDuration() * 1000000),
- 'mu' => $profile->getMemoryUsage(),
- 'pmu' => $profile->getPeakMemoryUsage(),
- ];
- }
- }
-}
-
-class_alias('Twig\Profiler\Dumper\BlackfireDumper', 'Twig_Profiler_Dumper_Blackfire');
diff --git a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/HtmlDumper.php b/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/HtmlDumper.php
deleted file mode 100644
index 5be5abe..0000000
--- a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/HtmlDumper.php
+++ /dev/null
@@ -1,49 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Twig\Profiler\Dumper;
-
-use Twig\Profiler\Profile;
-
-/**
- * @author Fabien Potencier <fabien@symfony.com>
- */
-final class HtmlDumper extends BaseDumper
-{
- private static $colors = [
- 'block' => '#dfd',
- 'macro' => '#ddf',
- 'template' => '#ffd',
- 'big' => '#d44',
- ];
-
- public function dump(Profile $profile)
- {
- return '<pre>'.parent::dump($profile).'</pre>';
- }
-
- protected function formatTemplate(Profile $profile, $prefix)
- {
- return sprintf('%s└ <span style="background-color: %s">%s</span>', $prefix, self::$colors['template'], $profile->getTemplate());
- }
-
- protected function formatNonTemplate(Profile $profile, $prefix)
- {
- return sprintf('%s└ %s::%s(<span style="background-color: %s">%s</span>)', $prefix, $profile->getTemplate(), $profile->getType(), isset(self::$colors[$profile->getType()]) ? self::$colors[$profile->getType()] : 'auto', $profile->getName());
- }
-
- protected function formatTime(Profile $profile, $percent)
- {
- return sprintf('<span style="color: %s">%.2fms/%.0f%%</span>', $percent > 20 ? self::$colors['big'] : 'auto', $profile->getDuration() * 1000, $percent);
- }
-}
-
-class_alias('Twig\Profiler\Dumper\HtmlDumper', 'Twig_Profiler_Dumper_Html');
diff --git a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/TextDumper.php b/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/TextDumper.php
deleted file mode 100644
index 395ef9d..0000000
--- a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Dumper/TextDumper.php
+++ /dev/null
@@ -1,37 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Twig\Profiler\Dumper;
-
-use Twig\Profiler\Profile;
-
-/**
- * @author Fabien Potencier <fabien@symfony.com>
- */
-final class TextDumper extends BaseDumper
-{
- protected function formatTemplate(Profile $profile, $prefix)
- {
- return sprintf('%s└ %s', $prefix, $profile->getTemplate());
- }
-
- protected function formatNonTemplate(Profile $profile, $prefix)
- {
- return sprintf('%s└ %s::%s(%s)', $prefix, $profile->getTemplate(), $profile->getType(), $profile->getName());
- }
-
- protected function formatTime(Profile $profile, $percent)
- {
- return sprintf('%.2fms/%.0f%%', $profile->getDuration() * 1000, $percent);
- }
-}
-
-class_alias('Twig\Profiler\Dumper\TextDumper', 'Twig_Profiler_Dumper_Text');
diff --git a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Node/EnterProfileNode.php b/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Node/EnterProfileNode.php
deleted file mode 100644
index 91de5ff..0000000
--- a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Node/EnterProfileNode.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Twig\Profiler\Node;
-
-use Twig\Compiler;
-use Twig\Node\Node;
-
-/**
- * Represents a profile enter node.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- */
-class EnterProfileNode extends Node
-{
- public function __construct(string $extensionName, string $type, string $name, string $varName)
- {
- parent::__construct([], ['extension_name' => $extensionName, 'name' => $name, 'type' => $type, 'var_name' => $varName]);
- }
-
- public function compile(Compiler $compiler)
- {
- $compiler
- ->write(sprintf('$%s = $this->extensions[', $this->getAttribute('var_name')))
- ->repr($this->getAttribute('extension_name'))
- ->raw("];\n")
- ->write(sprintf('$%s->enter($%s = new \Twig\Profiler\Profile($this->getTemplateName(), ', $this->getAttribute('var_name'), $this->getAttribute('var_name').'_prof'))
- ->repr($this->getAttribute('type'))
- ->raw(', ')
- ->repr($this->getAttribute('name'))
- ->raw("));\n\n")
- ;
- }
-}
-
-class_alias('Twig\Profiler\Node\EnterProfileNode', 'Twig_Profiler_Node_EnterProfile');
diff --git a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Node/LeaveProfileNode.php b/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Node/LeaveProfileNode.php
deleted file mode 100644
index 7fbf435..0000000
--- a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Node/LeaveProfileNode.php
+++ /dev/null
@@ -1,38 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Twig\Profiler\Node;
-
-use Twig\Compiler;
-use Twig\Node\Node;
-
-/**
- * Represents a profile leave node.
- *
- * @author Fabien Potencier <fabien@symfony.com>
- */
-class LeaveProfileNode extends Node
-{
- public function __construct(string $varName)
- {
- parent::__construct([], ['var_name' => $varName]);
- }
-
- public function compile(Compiler $compiler)
- {
- $compiler
- ->write("\n")
- ->write(sprintf("\$%s->leave(\$%s);\n\n", $this->getAttribute('var_name'), $this->getAttribute('var_name').'_prof'))
- ;
- }
-}
-
-class_alias('Twig\Profiler\Node\LeaveProfileNode', 'Twig_Profiler_Node_LeaveProfile');
diff --git a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/NodeVisitor/ProfilerNodeVisitor.php b/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/NodeVisitor/ProfilerNodeVisitor.php
deleted file mode 100644
index f19f6b7..0000000
--- a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/NodeVisitor/ProfilerNodeVisitor.php
+++ /dev/null
@@ -1,78 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Twig\Profiler\NodeVisitor;
-
-use Twig\Environment;
-use Twig\Node\BlockNode;
-use Twig\Node\BodyNode;
-use Twig\Node\MacroNode;
-use Twig\Node\ModuleNode;
-use Twig\Node\Node;
-use Twig\NodeVisitor\AbstractNodeVisitor;
-use Twig\Profiler\Node\EnterProfileNode;
-use Twig\Profiler\Node\LeaveProfileNode;
-use Twig\Profiler\Profile;
-
-/**
- * @author Fabien Potencier <fabien@symfony.com>
- */
-final class ProfilerNodeVisitor extends AbstractNodeVisitor
-{
- private $extensionName;
-
- public function __construct(string $extensionName)
- {
- $this->extensionName = $extensionName;
- }
-
- protected function doEnterNode(Node $node, Environment $env)
- {
- return $node;
- }
-
- protected function doLeaveNode(Node $node, Environment $env)
- {
- if ($node instanceof ModuleNode) {
- $varName = $this->getVarName();
- $node->setNode('display_start', new Node([new EnterProfileNode($this->extensionName, Profile::TEMPLATE, $node->getTemplateName(), $varName), $node->getNode('display_start')]));
- $node->setNode('display_end', new Node([new LeaveProfileNode($varName), $node->getNode('display_end')]));
- } elseif ($node instanceof BlockNode) {
- $varName = $this->getVarName();
- $node->setNode('body', new BodyNode([
- new EnterProfileNode($this->extensionName, Profile::BLOCK, $node->getAttribute('name'), $varName),
- $node->getNode('body'),
- new LeaveProfileNode($varName),
- ]));
- } elseif ($node instanceof MacroNode) {
- $varName = $this->getVarName();
- $node->setNode('body', new BodyNode([
- new EnterProfileNode($this->extensionName, Profile::MACRO, $node->getAttribute('name'), $varName),
- $node->getNode('body'),
- new LeaveProfileNode($varName),
- ]));
- }
-
- return $node;
- }
-
- private function getVarName(): string
- {
- return sprintf('__internal_%s', hash('sha256', $this->extensionName));
- }
-
- public function getPriority()
- {
- return 0;
- }
-}
-
-class_alias('Twig\Profiler\NodeVisitor\ProfilerNodeVisitor', 'Twig_Profiler_NodeVisitor_Profiler');
diff --git a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Profile.php b/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Profile.php
deleted file mode 100644
index e9726d6..0000000
--- a/srcs/phpmyadmin/vendor/twig/twig/src/Profiler/Profile.php
+++ /dev/null
@@ -1,192 +0,0 @@
-<?php
-
-/*
- * This file is part of Twig.
- *
- * (c) Fabien Potencier
- *
- * For the full copyright and license information, please view the LICENSE
- * file that was distributed with this source code.
- */
-
-namespace Twig\Profiler;
-
-/**
- * @author Fabien Potencier <fabien@symfony.com>
- *
- * @final since Twig 2.4.0
- */
-class Profile implements \IteratorAggregate, \Serializable
-{
- const ROOT = 'ROOT';
- const BLOCK = 'block';
- const TEMPLATE = 'template';
- const MACRO = 'macro';
-
- private $template;
- private $name;
- private $type;
- private $starts = [];
- private $ends = [];
- private $profiles = [];
-
- public function __construct(string $template = 'main', string $type = self::ROOT, string $name = 'main')
- {
- if (__CLASS__ !== \get_class($this)) {
- @trigger_error('Overriding '.__CLASS__.' is deprecated since Twig 2.4.0 and the class will be final in 3.0.', E_USER_DEPRECATED);
- }
-
- $this->template = $template;
- $this->type = $type;
- $this->name = 0 === strpos($name, '__internal_') ? 'INTERNAL' : $name;
- $this->enter();
- }
-
- public function getTemplate()
- {
- return $this->template;
- }
-
- public function getType()
- {
- return $this->type;
- }
-
- public function getName()
- {
- return $this->name;
- }
-
- public function isRoot()
- {
- return self::ROOT === $this->type;
- }
-
- public function isTemplate()
- {
- return self::TEMPLATE === $this->type;
- }
-
- public function isBlock()
- {
- return self::BLOCK === $this->type;
- }
-
- public function isMacro()
- {
- return self::MACRO === $this->type;
- }
-
- public function getProfiles()
- {
- return $this->profiles;
- }
-
- public function addProfile(self $profile)
- {
- $this->profiles[] = $profile;
- }
-
- /**
- * Returns the duration in microseconds.
- *
- * @return float
- */
- public function getDuration()
- {
- if ($this->isRoot() && $this->profiles) {
- // for the root node with children, duration is the sum of all child durations
- $duration = 0;
- foreach ($this->profiles as $profile) {
- $duration += $profile->getDuration();
- }
-
- return $duration;
- }
-
- return isset($this->ends['wt']) && isset($this->starts['wt']) ? $this->ends['wt'] - $this->starts['wt'] : 0;
- }
-
- /**
- * Returns the memory usage in bytes.
- *
- * @return int
- */
- public function getMemoryUsage()
- {
- return isset($this->ends['mu']) && isset($this->starts['mu']) ? $this->ends['mu'] - $this->starts['mu'] : 0;
- }
-
- /**
- * Returns the peak memory usage in bytes.
- *
- * @return int
- */
- public function getPeakMemoryUsage()
- {
- return isset($this->ends['pmu']) && isset($this->starts['pmu']) ? $this->ends['pmu'] - $this->starts['pmu'] : 0;
- }
-
- /**
- * Starts the profiling.
- */
- public function enter()
- {
- $this->starts = [
- 'wt' => microtime(true),
- 'mu' => memory_get_usage(),
- 'pmu' => memory_get_peak_usage(),
- ];
- }
-
- /**
- * Stops the profiling.
- */
- public function leave()
- {
- $this->ends = [
- 'wt' => microtime(true),
- 'mu' => memory_get_usage(),
- 'pmu' => memory_get_peak_usage(),
- ];
- }
-
- public function reset()
- {
- $this->starts = $this->ends = $this->profiles = [];
- $this->enter();
- }
-
- public function getIterator()
- {
- return new \ArrayIterator($this->profiles);
- }
-
- public function serialize()
- {
- return serialize($this->__serialize());
- }
-
- public function unserialize($data)
- {
- $this->__unserialize(unserialize($data));
- }
-
- /**
- * @internal
- */
- public function __serialize()
- {
- return [$this->template, $this->name, $this->type, $this->starts, $this->ends, $this->profiles];
- }
-
- /**
- * @internal
- */
- public function __unserialize(array $data)
- {
- list($this->template, $this->name, $this->type, $this->starts, $this->ends, $this->profiles) = $data;
- }
-}
-
-class_alias('Twig\Profiler\Profile', 'Twig_Profiler_Profile');