diff --git a/src/Converter/Diff.php b/src/Converter/Diff.php new file mode 100644 index 0000000..c3c7ceb --- /dev/null +++ b/src/Converter/Diff.php @@ -0,0 +1,95 @@ +keys = $current->getKeys(); + $emptyData = \array_fill_keys($this->keys, 0); + + $diff = []; + $diffPercent = []; + + foreach ($current->getData() as $key => $baseData) { + $headData = $head->getData()[$key] ?? $emptyData; + $diff[$key] = $this->diffKeys($headData, $baseData); + + if ($key === 'main()') { + $diffPercent[$key] = $this->diffPercentKeys($headData, $baseData); + } + } + + $currentCount = $this->getFunctionCount($current); + $headCount = $this->getFunctionCount($head); + + $this->functionsCount = $headCount - $currentCount; + $this->functionsCountPercent = $headCount / $currentCount; + + $this->diff = new FlatterList($current->getKeys(), $diff); + $this->diffPercent = $diffPercent; + } + + public function jsonSerialize(): array + { + return [ + 'current' => $this->current, + 'head' => $this->head, + 'diff' => $this->diff, + 'functions_count' => $this->functionsCount, + 'diff_percent' => $this->diffPercent, + 'functions_count_percent' => $this->functionsCountPercent, + ]; + } + + + /** + * Get the total number of tracked function calls in this run. + */ + private function getFunctionCount(FlatterList $list): int + { + $total = 0; + foreach ($list->getData() as $data) { + $total += $data['ct']; + } + + return $total; + } + + private function diffKeys(array $a, array $b): array + { + $keys = $this->keys; + foreach ($keys as $key) { + $a[$key] -= $b[$key]; + } + + return $a; + } + + private function diffPercentKeys(array $a, array $b): array + { + $out = []; + $keys = $this->keys; + + foreach ($keys as $key) { + if ($b[$key] !== 0) { + $out[$key] = $a[$key] / $b[$key]; + } else { + $out[$key] = -1; + } + } + + return $out; + } +} diff --git a/src/Converter/FlatterList.php b/src/Converter/FlatterList.php index 48fdaf9..bf29dfd 100644 --- a/src/Converter/FlatterList.php +++ b/src/Converter/FlatterList.php @@ -18,32 +18,53 @@ final class FlatterList implements \JsonSerializable { /** @const Key used for methods with no parent */ private const NO_PARENT = '__top__'; + private readonly array $indexed; + private bool $withExclusive; public function __construct( private readonly array $keys, - private array $data, - private readonly array $indexed + private array $data ) { + $this->withExclusive = false; + $this->indexData(); + } + + public function diff(self $head): Diff + { + return new Diff($this, $head); + } + + public function getKeys(): array + { + $keys = $this->keys; + + if ($this->withExclusive) { + $keys = \array_merge($keys, ['ewt', 'ecpu', 'emu', 'epmu', 'ect']); + } + + return $keys; } public function callGraph(string $metric = 'wt', float $threshold = 0.01): CallGraph { - $valid = $this->keys; + $valid = $this->getKeys(); if (!\in_array($metric, $valid)) { throw new \InvalidArgumentException("Unknown metric '$metric'. Cannot generate callgraph."); } return new CallGraph( - $this->calculateSelf()->data, + $this->getData(), $this->indexed, $metric, $threshold ); } - private function calculateSelf(): self + public function withExclusiveValues(): self { $self = clone $this; + $self->withExclusive = true; + // Init exclusive values foreach ($self->data as &$data) { $data['ewt'] = $data['wt']; @@ -113,4 +134,19 @@ public function getData(): array { return $this->data; } + + private function indexData(): void + { + $indexed = []; + + foreach ($this->data as $key => $data) { + $parents = $data['parents'] ?? []; + unset($data['parents']); + foreach ($parents as $parent) { + $indexed[$parent][$key] = $data; + } + } + + $this->indexed = $indexed; + } } diff --git a/src/Converter/FlatterListConverter.php b/src/Converter/FlatterListConverter.php index b6db168..0bcc88e 100644 --- a/src/Converter/FlatterListConverter.php +++ b/src/Converter/FlatterListConverter.php @@ -33,7 +33,7 @@ public function convert(array $data): FlatterList $result[$func]['parents'][] = $parent; } else { $result[$func] = $values; - $result[$func]['parents'] = [$parent]; + $result[$func]['c'] = [$parent]; } // Build the indexed data. diff --git a/tests/src/TestCase.php b/tests/src/TestCase.php index 17e3239..6f9f76a 100644 --- a/tests/src/TestCase.php +++ b/tests/src/TestCase.php @@ -14,9 +14,9 @@ public function getTrace(): array return \json_decode(\file_get_contents(__DIR__ . '/fixture/trace.json'), true)['data']; } - public function getFlatterList(): FlatterList + public function getFlatterList(string $version = 'v1'): FlatterList { - $data = \json_decode(\file_get_contents(__DIR__ . '/fixture/flater_list.json'), true); + $data = \json_decode(\file_get_contents(__DIR__ . "/fixture/flater_list.{$version}.json"), true); return new FlatterList( ['ct', 'wt', 'cpu', 'mu', 'pmu'], diff --git a/tests/src/fixture/flater_list.json b/tests/src/fixture/flater_list.v1.json similarity index 100% rename from tests/src/fixture/flater_list.json rename to tests/src/fixture/flater_list.v1.json diff --git a/tests/src/fixture/flater_list.v2.json b/tests/src/fixture/flater_list.v2.json new file mode 100644 index 0000000..ae70fb9 --- /dev/null +++ b/tests/src/fixture/flater_list.v2.json @@ -0,0 +1,4928 @@ +[ + { + "ReflectionParameter::hasType": { + "ct": 80, + "wt": 41, + "cpu": 74, + "mu": 6440, + "pmu": 600, + "parents": [ + "Spiral\\Router\\Router::handle", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "ReflectionParameter::getName": { + "ct": 96, + "wt": 60, + "cpu": 92, + "mu": 6440, + "pmu": 600, + "parents": [ + "Spiral\\Router\\Router::handle", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "ReflectionParameter::getType": { + "ct": 93, + "wt": 63, + "cpu": 98, + "mu": 16712, + "pmu": 808, + "parents": [ + "Spiral\\Router\\Router::handle", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getParameterClass", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "ReflectionNamedType::isBuiltin": { + "ct": 82, + "wt": 76, + "cpu": 98, + "mu": 12672, + "pmu": 600, + "parents": [ + "Spiral\\Router\\Router::handle", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getParameterClass", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "ReflectionNamedType::getName": { + "ct": 81, + "wt": 48, + "cpu": 83, + "mu": 7040, + "pmu": 600, + "parents": [ + "Spiral\\Router\\Router::handle", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getParameterClass", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "array_key_last": { + "ct": 396, + "wt": 240, + "cpu": 362, + "mu": 8824, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Router::handle", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Core\\AbstractCore::__construct", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Http\\Request\\InputManager::request", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler", + "App\\Controller\\HomeController::__get", + "Spiral\\Prototype\\PrototypeRegistry::resolveProperty" + ] + }, + "array_pop": { + "ct": 363, + "wt": 224, + "cpu": 362, + "mu": 7192, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Router::handle", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Core\\AbstractCore::__construct", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Http\\Request\\InputManager::request", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler", + "App\\Controller\\HomeController::__get", + "Spiral\\Prototype\\PrototypeRegistry::resolveProperty" + ] + }, + "ReflectionParameter::allowsNull": { + "ct": 37, + "wt": 29, + "cpu": 42, + "mu": 6440, + "pmu": 176, + "parents": [ + "Spiral\\Router\\Router::handle", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "strtoupper": { + "ct": 6, + "wt": 3, + "cpu": 8, + "mu": 1168, + "pmu": 0, + "parents": [ + "Spiral\\Router\\AbstractRoute::match", + "Spiral\\Http\\Request\\ServerBag::normalize" + ] + }, + "Spiral\\Router\\AbstractRoute::getVerbs": { + "ct": 4, + "wt": 5, + "cpu": 6, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Router\\AbstractRoute::match" + ] + }, + "in_array": { + "ct": 4, + "wt": 4, + "cpu": 4, + "mu": 552, + "pmu": 0, + "parents": [ + "Spiral\\Router\\AbstractRoute::match" + ] + }, + "Spiral\\Router\\UriHandler::isCompiled": { + "ct": 4, + "wt": 2, + "cpu": 8, + "mu": 568, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::match" + ] + }, + "Spiral\\Router\\UriHandler::getPrefix": { + "ct": 4, + "wt": 5, + "cpu": 8, + "mu": 568, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::compile" + ] + }, + "ltrim": { + "ct": 15, + "wt": 11, + "cpu": 15, + "mu": 2480, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::compile", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "rtrim": { + "ct": 68, + "wt": 45, + "cpu": 64, + "mu": 1104, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::compile", + "Spiral\\Http\\Request\\InputBag::dotGet" + ] + }, + "str_starts_with": { + "ct": 4, + "wt": 4, + "cpu": 4, + "mu": 552, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::compile" + ] + }, + "preg_match_all": { + "ct": 4, + "wt": 65, + "cpu": 66, + "mu": 4904, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::compile" + ] + }, + "preg_replace": { + "ct": 6, + "wt": 77, + "cpu": 79, + "mu": 1272, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::compile", + "Spiral\\Http\\Request\\ServerBag::normalize" + ] + }, + "array_fill_keys": { + "ct": 4, + "wt": 4, + "cpu": 4, + "mu": 1416, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::compile" + ] + }, + "strtr": { + "ct": 49, + "wt": 43, + "cpu": 66, + "mu": 12264, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::compile", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "class_exists", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Core\\InterceptableCore::__construct", + "Nyholm\\Psr7\\Factory\\Psr17Factory::createResponse", + "Nyholm\\Psr7\\Response::setHeaders", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Http\\Request\\InputManager::bag", + "Spiral\\Http\\Request\\InputBag::dotGet", + "ReflectionProperty::getAttributes", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Monolog\\Logger::addRecord", + "Nyholm\\Psr7\\Response::getBody" + ] + }, + "str_replace": { + "ct": 42, + "wt": 47, + "cpu": 58, + "mu": 10928, + "pmu": 184, + "parents": [ + "Spiral\\Router\\UriHandler::compile", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Doctrine\\Inflector\\Inflector::classify", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Monolog\\Formatter\\LineFormatter::replaceNewlines", + "Monolog\\Formatter\\LineFormatter::format" + ] + }, + "stripslashes": { + "ct": 4, + "wt": 4, + "cpu": 5, + "mu": 720, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::compile" + ] + }, + "Spiral\\Router\\UriHandler::compile": { + "ct": 4, + "wt": 258, + "cpu": 258, + "mu": 18736, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::match" + ] + }, + "Nyholm\\Psr7\\Uri::getPath": { + "ct": 4, + "wt": 5, + "cpu": 6, + "mu": 568, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::fetchTarget" + ] + }, + "substr": { + "ct": 136, + "wt": 78, + "cpu": 116, + "mu": 14816, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::fetchTarget", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "class_exists", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Core\\InterceptableCore::__construct", + "Nyholm\\Psr7\\Factory\\Psr17Factory::createResponse", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Http\\Request\\InputManager::bag", + "Spiral\\Http\\Request\\InputBag::dotGet", + "ReflectionProperty::getAttributes", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Monolog\\Logger::addRecord", + "Nyholm\\Psr7\\Response::getBody" + ] + }, + "trim": { + "ct": 5, + "wt": 3, + "cpu": 6, + "mu": 1104, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::fetchTarget", + "Nyholm\\Psr7\\Response::validateAndTrimHeader" + ] + }, + "Spiral\\Router\\UriHandler::fetchTarget": { + "ct": 4, + "wt": 42, + "cpu": 46, + "mu": 2432, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::match" + ] + }, + "preg_match": { + "ct": 7, + "wt": 126, + "cpu": 130, + "mu": 2392, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::match", + "Spiral\\Router\\Target\\Namespaced::resolveController", + "Nyholm\\Psr7\\Response::validateAndTrimHeader" + ] + }, + "Spiral\\Router\\UriHandler::match": { + "ct": 4, + "wt": 465, + "cpu": 468, + "mu": 18408, + "pmu": 0, + "parents": [ + "Spiral\\Router\\AbstractRoute::match" + ] + }, + "Spiral\\Router\\AbstractRoute::match": { + "ct": 4, + "wt": 529, + "cpu": 532, + "mu": 22768, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Router::matchRoute" + ] + }, + "array_combine": { + "ct": 2, + "wt": 2, + "cpu": 3, + "mu": 1304, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::compile" + ] + }, + "Spiral\\Router\\UriHandler::prepareSegment": { + "ct": 3, + "wt": 6, + "cpu": 9, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::compile" + ] + }, + "sprintf": { + "ct": 125, + "wt": 152, + "cpu": 206, + "mu": 45080, + "pmu": 2304, + "parents": [ + "Spiral\\Router\\UriHandler::compile", + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Router\\Target\\Namespaced::resolveController", + "Spiral\\Router\\CoreHandler::Spiral\\Router\\{closure}", + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getDeclaredFilters", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Http\\Request\\InputBag::dotGet", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "Spiral\\Router\\UriHandler::Spiral\\Router\\{closure}": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 568, + "pmu": 0, + "parents": [ + "array_filter" + ] + }, + "array_filter": { + "ct": 1, + "wt": 8, + "cpu": 8, + "mu": 1240, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::match" + ] + }, + "array_intersect_key": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 608, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::match" + ] + }, + "array_merge": { + "ct": 37, + "wt": 24, + "cpu": 44, + "mu": 3232, + "pmu": 0, + "parents": [ + "Spiral\\Router\\UriHandler::match", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Http\\Request\\InputManager::__construct", + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyImports", + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "Spiral\\Router\\Router::matchRoute": { + "ct": 1, + "wt": 544, + "cpu": 545, + "mu": 23416, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Router::Spiral\\Router\\{closure}" + ] + }, + "Spiral\\Telemetry\\Span::setAttribute": { + "ct": 3, + "wt": 6, + "cpu": 7, + "mu": 960, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Router::Spiral\\Router\\{closure}" + ] + }, + "Spiral\\Router\\AbstractRoute::getMatches": { + "ct": 2, + "wt": 3, + "cpu": 3, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Router::Spiral\\Router\\{closure}" + ] + }, + "strrpos": { + "ct": 88, + "wt": 56, + "cpu": 75, + "mu": 7776, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "class_exists", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Core\\InterceptableCore::__construct", + "Nyholm\\Psr7\\Factory\\Psr17Factory::createResponse", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Http\\Request\\InputManager::bag", + "Spiral\\Http\\Request\\InputBag::dotGet", + "ReflectionProperty::getAttributes", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Monolog\\Logger::addRecord", + "Nyholm\\Psr7\\Response::getBody" + ] + }, + "file_exists": { + "ct": 73, + "wt": 504, + "cpu": 529, + "mu": 8984, + "pmu": 560, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "class_exists", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Core\\InterceptableCore::__construct", + "Nyholm\\Psr7\\Factory\\Psr17Factory::createResponse", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Http\\Request\\InputManager::bag", + "Spiral\\Http\\Request\\InputBag::dotGet", + "ReflectionProperty::getAttributes", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Monolog\\Logger::addRecord", + "Monolog\\Handler\\RotatingFileHandler::write", + "Nyholm\\Psr7\\Response::getBody" + ] + }, + "load::src\/CoreHandler.php": { + "ct": 1, + "wt": 288, + "cpu": 289, + "mu": 31872, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler" + ] + }, + "class_exists": { + "ct": 823, + "wt": 4119, + "cpu": 4385, + "mu": 174840, + "pmu": 208, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata", + "Spiral\\Filters\\Model\\Schema\\Builder::makeSchema", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "ReflectionClass::__construct": { + "ct": 125, + "wt": 70, + "cpu": 113, + "mu": 8256, + "pmu": 600, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getParameterClass", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Filters\\Model\\FilterProvider::createFilterInstance", + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map", + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "ReflectionClass::implementsInterface": { + "ct": 158, + "wt": 100, + "cpu": 174, + "mu": 6520, + "pmu": 600, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getDeclaredFilters", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "ReflectionClass::isSubclassOf": { + "ct": 498, + "wt": 242, + "cpu": 383, + "mu": 5872, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "interface_exists": { + "ct": 630, + "wt": 308, + "cpu": 448, + "mu": 5712, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "ReflectionClass::isInstantiable": { + "ct": 22, + "wt": 14, + "cpu": 26, + "mu": 5304, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "ReflectionClass::getConstructor": { + "ct": 24, + "wt": 14, + "cpu": 28, + "mu": 7920, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Filters\\Model\\FilterProvider::createFilter", + "Spiral\\Filters\\Model\\FilterProvider::createFilterInstance", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "ReflectionClass::newInstance": { + "ct": 5, + "wt": 8, + "cpu": 11, + "mu": 2984, + "pmu": 912, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "ReflectionMethod::__construct": { + "ct": 7, + "wt": 10, + "cpu": 14, + "mu": 3520, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getDeclaredFilters", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "load::src\/Core.php": { + "ct": 1, + "wt": 31, + "cpu": 32, + "mu": 2464, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "load::src\/AbstractCore.php": { + "ct": 1, + "wt": 122, + "cpu": 123, + "mu": 16520, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "load::src\/CoreInterface.php": { + "ct": 1, + "wt": 29, + "cpu": 30, + "mu": 3800, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "WeakReference::get": { + "ct": 26, + "wt": 16, + "cpu": 25, + "mu": 4592, + "pmu": 432, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Core\\AbstractCore::__construct", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "Spiral\\Core\\AbstractCore::__construct": { + "ct": 1, + "wt": 43, + "cpu": 44, + "mu": 2872, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler" + ] + }, + "str_repeat": { + "ct": 38, + "wt": 24, + "cpu": 38, + "mu": 3264, + "pmu": 584, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "implode": { + "ct": 58, + "wt": 44, + "cpu": 58, + "mu": 14704, + "pmu": 792, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "var_export": { + "ct": 11, + "wt": 10, + "cpu": 15, + "mu": 5104, + "pmu": 296, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "array_push": { + "ct": 21, + "wt": 16, + "cpu": 24, + "mu": 4488, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "Exception::__construct": { + "ct": 69, + "wt": 57, + "cpu": 80, + "mu": 2888, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Http\\Request\\InputBag::dotGet", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "ReflectionParameter::isDefaultValueAvailable": { + "ct": 17, + "wt": 16, + "cpu": 20, + "mu": 3064, + "pmu": 768, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "ReflectionParameter::getDefaultValue": { + "ct": 8, + "wt": 6, + "cpu": 13, + "mu": 2952, + "pmu": 1184, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "load::src\/InterceptableCore.php": { + "ct": 1, + "wt": 75, + "cpu": 77, + "mu": 6416, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\DomainBootloader::domainCore" + ] + }, + "load::src\/InterceptorPipeline.php": { + "ct": 1, + "wt": 116, + "cpu": 117, + "mu": 10240, + "pmu": 0, + "parents": [ + "Spiral\\Core\\InterceptableCore::__construct" + ] + }, + "Spiral\\Core\\InterceptorPipeline::__construct": { + "ct": 4, + "wt": 8, + "cpu": 10, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Core\\InterceptableCore::__construct" + ] + }, + "Spiral\\Core\\InterceptableCore::__construct": { + "ct": 4, + "wt": 186, + "cpu": 188, + "mu": 12840, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "load::Interceptor\/FilterInterceptor.php": { + "ct": 1, + "wt": 167, + "cpu": 169, + "mu": 18064, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "load::src\/CoreInterceptorInterface.php": { + "ct": 1, + "wt": 29, + "cpu": 31, + "mu": 3672, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "Spiral\\Filters\\Interceptor\\FilterInterceptor::__construct": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 632, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\DomainBootloader::domainCore" + ] + }, + "Spiral\\Core\\InterceptorPipeline::addInterceptor": { + "ct": 4, + "wt": 7, + "cpu": 8, + "mu": 1728, + "pmu": 0, + "parents": [ + "Spiral\\Core\\InterceptableCore::addInterceptor" + ] + }, + "Spiral\\Core\\InterceptableCore::addInterceptor": { + "ct": 4, + "wt": 19, + "cpu": 23, + "mu": 3624, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\DomainBootloader::domainCore", + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "Spiral\\Bootloader\\DomainBootloader::domainCore": { + "ct": 1, + "wt": 1029, + "cpu": 1030, + "mu": 48088, + "pmu": 0, + "parents": [ + "ReflectionMethod::invokeArgs" + ] + }, + "ReflectionMethod::invokeArgs": { + "ct": 5, + "wt": 15274, + "cpu": 15321, + "mu": 313536, + "pmu": 141712, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}" + ] + }, + "Spiral\\Router\\CoreHandler::__construct": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::coreHandler" + ] + }, + "Spiral\\Router\\Target\\AbstractTarget::coreHandler": { + "ct": 1, + "wt": 4175, + "cpu": 4176, + "mu": 124744, + "pmu": 132760, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::getHandler" + ] + }, + "ucwords": { + "ct": 1, + "wt": 1, + "cpu": 1, + "mu": 584, + "pmu": 0, + "parents": [ + "Doctrine\\Inflector\\Inflector::classify" + ] + }, + "Doctrine\\Inflector\\Inflector::classify": { + "ct": 1, + "wt": 10, + "cpu": 11, + "mu": 1864, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\Namespaced::resolveController" + ] + }, + "Spiral\\Router\\Target\\Namespaced::resolveController": { + "ct": 1, + "wt": 56, + "cpu": 57, + "mu": 4112, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::getHandler" + ] + }, + "Spiral\\Router\\Target\\Namespaced::resolveAction": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::getHandler" + ] + }, + "Spiral\\Router\\CoreHandler::withContext": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 792, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::getHandler" + ] + }, + "Spiral\\Router\\CoreHandler::withVerbActions": { + "ct": 1, + "wt": 2, + "cpu": 2, + "mu": 792, + "pmu": 0, + "parents": [ + "Spiral\\Router\\Target\\AbstractTarget::getHandler" + ] + }, + "Spiral\\Router\\Target\\AbstractTarget::getHandler": { + "ct": 1, + "wt": 4256, + "cpu": 4257, + "mu": 131752, + "pmu": 132760, + "parents": [ + "Spiral\\Router\\Route::requestHandler" + ] + }, + "Spiral\\Router\\Route::requestHandler": { + "ct": 1, + "wt": 4265, + "cpu": 4265, + "mu": 132384, + "pmu": 132760, + "parents": [ + "Spiral\\Router\\Route::handle" + ] + }, + "ob_get_level": { + "ct": 2, + "wt": 4, + "cpu": 5, + "mu": 552, + "pmu": 0, + "parents": [ + "Spiral\\Router\\CoreHandler::handle" + ] + }, + "ob_start": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 17064, + "pmu": 0, + "parents": [ + "Spiral\\Router\\CoreHandler::handle" + ] + }, + "load::src\/Response.php": { + "ct": 1, + "wt": 164, + "cpu": 165, + "mu": 23752, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Factory\\Psr17Factory::createResponse" + ] + }, + "load::src\/ResponseInterface.php": { + "ct": 1, + "wt": 37, + "cpu": 38, + "mu": 8944, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Factory\\Psr17Factory::createResponse" + ] + }, + "Nyholm\\Psr7\\Response::setHeaders": { + "ct": 2, + "wt": 29, + "cpu": 30, + "mu": 5464, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Response::__construct", + "Nyholm\\Psr7\\Response::withAddedHeader" + ] + }, + "Nyholm\\Psr7\\Response::__construct": { + "ct": 1, + "wt": 8, + "cpu": 8, + "mu": 1216, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Factory\\Psr17Factory::createResponse" + ] + }, + "Nyholm\\Psr7\\Factory\\Psr17Factory::createResponse": { + "ct": 1, + "wt": 309, + "cpu": 310, + "mu": 25200, + "pmu": 0, + "parents": [ + "Spiral\\Nyholm\\ResponseFactory::createResponse" + ] + }, + "Spiral\\Http\\Config\\HttpConfig::getBaseHeaders": { + "ct": 1, + "wt": 3, + "cpu": 3, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Nyholm\\ResponseFactory::createResponse" + ] + }, + "is_numeric": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 568, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Response::validateAndTrimHeader" + ] + }, + "Nyholm\\Psr7\\Response::validateAndTrimHeader": { + "ct": 1, + "wt": 17, + "cpu": 18, + "mu": 2840, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Response::setHeaders" + ] + }, + "Nyholm\\Psr7\\Response::withAddedHeader": { + "ct": 1, + "wt": 33, + "cpu": 33, + "mu": 5704, + "pmu": 0, + "parents": [ + "Spiral\\Nyholm\\ResponseFactory::createResponse" + ] + }, + "Spiral\\Nyholm\\ResponseFactory::createResponse": { + "ct": 1, + "wt": 357, + "cpu": 358, + "mu": 32120, + "pmu": 0, + "parents": [ + "Spiral\\Router\\CoreHandler::handle" + ] + }, + "Spiral\\Router\\CoreHandler::getAction": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Router\\CoreHandler::handle" + ] + }, + "array_keys": { + "ct": 2, + "wt": 2, + "cpu": 3, + "mu": 1904, + "pmu": 128, + "parents": [ + "Spiral\\Router\\CoreHandler::Spiral\\Router\\{closure}", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection" + ] + }, + "Spiral\\Core\\InterceptorPipeline::withCore": { + "ct": 3, + "wt": 8, + "cpu": 11, + "mu": 1504, + "pmu": 0, + "parents": [ + "Spiral\\Core\\InterceptableCore::callAction", + "Spiral\\Core\\InterceptableCore::callAction@1" + ] + }, + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getParameterClass": { + "ct": 2, + "wt": 24, + "cpu": 27, + "mu": 3688, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getDeclaredFilters" + ] + }, + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getDeclaredFilters": { + "ct": 1, + "wt": 53, + "cpu": 54, + "mu": 7680, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Interceptor\\FilterInterceptor::process" + ] + }, + "ReflectionFunctionAbstract::isStatic": { + "ct": 8, + "wt": 3, + "cpu": 80, + "mu": 1768, + "pmu": 0, + "parents": [ + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "ReflectionMethod::isPublic": { + "ct": 1, + "wt": 0, + "cpu": 2, + "mu": 568, + "pmu": 0, + "parents": [ + "Spiral\\Core\\AbstractCore::callAction" + ] + }, + "ReflectionClass::getName": { + "ct": 174, + "wt": 98, + "cpu": 152, + "mu": 4120, + "pmu": 472, + "parents": [ + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata", + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyAnnotations", + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyImports", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "ReflectionClass::hasConstant": { + "ct": 1, + "wt": 2, + "cpu": 2, + "mu": 600, + "pmu": 592, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection" + ] + }, + "ReflectionClass::getConstant": { + "ct": 5, + "wt": 6, + "cpu": 8, + "mu": 1784, + "pmu": 600, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "ReflectionClass::isInstance": { + "ct": 6, + "wt": 7, + "cpu": 10, + "mu": 2336, + "pmu": 600, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection", + "Spiral\\Core\\AbstractCore::callAction", + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "load::Interceptor\/Core.php": { + "ct": 1, + "wt": 59, + "cpu": 60, + "mu": 4200, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider" + ] + }, + "Spiral\\Filters\\Config\\FiltersConfig::getInterceptors": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 632, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider" + ] + }, + "load::Interceptor\/PopulateDataFromEntityInterceptor.php": { + "ct": 1, + "wt": 67, + "cpu": 68, + "mu": 5632, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "load::Interceptor\/ValidateFilterInterceptor.php": { + "ct": 1, + "wt": 149, + "cpu": 151, + "mu": 11768, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "Spiral\\Filters\\Model\\Interceptor\\ValidateFilterInterceptor::__construct": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 664, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider" + ] + }, + "load::Model\/FilterProvider.php": { + "ct": 1, + "wt": 128, + "cpu": 131, + "mu": 21400, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider" + ] + }, + "load::Model\/FilterProviderInterface.php": { + "ct": 1, + "wt": 27, + "cpu": 27, + "mu": 3392, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider" + ] + }, + "Spiral\\Filters\\Model\\FilterProvider::__construct": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 632, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider" + ] + }, + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider": { + "ct": 1, + "wt": 1351, + "cpu": 1353, + "mu": 52368, + "pmu": 0, + "parents": [ + "ReflectionMethod::invokeArgs" + ] + }, + "load::Filter\/InputScope.php": { + "ct": 1, + "wt": 81, + "cpu": 82, + "mu": 8504, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "load::src\/InputInterface.php": { + "ct": 1, + "wt": 32, + "cpu": 32, + "mu": 5304, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "Spiral\\Http\\Config\\HttpConfig::getInputBags": { + "ct": 1, + "wt": 2, + "cpu": 2, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputManager::__construct" + ] + }, + "Spiral\\Http\\Request\\InputManager::__construct": { + "ct": 1, + "wt": 8, + "cpu": 9, + "mu": 1928, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection" + ] + }, + "Spiral\\Filter\\InputScope::__construct": { + "ct": 1, + "wt": 1, + "cpu": 1, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection" + ] + }, + "load::Schema\/AttributeMapper.php": { + "ct": 1, + "wt": 133, + "cpu": 134, + "mu": 18520, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::__construct": { + "ct": 2, + "wt": 2, + "cpu": 4, + "mu": 632, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "ReflectionClass::newInstanceArgs": { + "ct": 34, + "wt": 130, + "cpu": 162, + "mu": 6888, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\FilterProvider::createFilterInstance", + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata" + ] + }, + "Spiral\\Filters\\Model\\FilterProvider::createFilterInstance": { + "ct": 2, + "wt": 17, + "cpu": 17, + "mu": 3456, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "ReflectionClass::getProperties": { + "ct": 2, + "wt": 5, + "cpu": 5, + "mu": 6072, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "Spiral\\Attributes\\Internal\\Decorator::getPropertyMetadata": { + "ct": 96, + "wt": 2410, + "cpu": 2455, + "mu": 67920, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Composite\\Composite::Spiral\\Attributes\\Composite\\{closure}" + ] + }, + "Spiral\\Attributes\\Composite\\Composite::Spiral\\Attributes\\Composite\\{closure}": { + "ct": 96, + "wt": 2761, + "cpu": 2810, + "mu": 68648, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Composite\\Composite::getPropertyMetadata" + ] + }, + "ReflectionProperty::getAttributes": { + "ct": 64, + "wt": 181, + "cpu": 204, + "mu": 24048, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\NativeAttributeReader::getPropertyAttributes" + ] + }, + "Spiral\\Attributes\\Internal\\NativeAttributeReader::getPropertyAttributes": { + "ct": 64, + "wt": 404, + "cpu": 427, + "mu": 61640, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata" + ] + }, + "ReflectionAttribute::getName": { + "ct": 128, + "wt": 802, + "cpu": 853, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata" + ] + }, + "load::Input\/Query.php": { + "ct": 1, + "wt": 105, + "cpu": 107, + "mu": 6656, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "load::Input\/AbstractInput.php": { + "ct": 1, + "wt": 31, + "cpu": 32, + "mu": 3864, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "ReflectionAttribute::getArguments": { + "ct": 64, + "wt": 35, + "cpu": 62, + "mu": 14424, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata" + ] + }, + "is_subclass_of": { + "ct": 64, + "wt": 37, + "cpu": 56, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata" + ] + }, + "ReflectionClass::getAttributes": { + "ct": 64, + "wt": 74, + "cpu": 95, + "mu": 18264, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata" + ] + }, + "ReflectionClass::getTraits": { + "ct": 128, + "wt": 63, + "cpu": 314, + "mu": 1200, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata", + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyImports" + ] + }, + "ReflectionClass::hasMethod": { + "ct": 64, + "wt": 49, + "cpu": 64, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata" + ] + }, + "ReflectionClass::getParentClass": { + "ct": 64, + "wt": 33, + "cpu": 52, + "mu": 3672, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata" + ] + }, + "ReflectionClass::newInstanceWithoutConstructor": { + "ct": 32, + "wt": 15, + "cpu": 28, + "mu": 1912, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Query::__construct": { + "ct": 28, + "wt": 36, + "cpu": 48, + "mu": 584, + "pmu": 0, + "parents": [ + "ReflectionClass::newInstanceArgs" + ] + }, + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata": { + "ct": 96, + "wt": 4960, + "cpu": 4995, + "mu": 80176, + "pmu": 0, + "parents": [ + "iterator_to_array" + ] + }, + "iterator_to_array": { + "ct": 96, + "wt": 5286, + "cpu": 5341, + "mu": 33208, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Composite\\Composite::getPropertyMetadata" + ] + }, + "Spiral\\Attributes\\Composite\\Composite::getPropertyMetadata": { + "ct": 64, + "wt": 8779, + "cpu": 8817, + "mu": 68944, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map", + "Spiral\\Attributes\\Reader::firstPropertyMetadata" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\AbstractInput::getKey": { + "ct": 64, + "wt": 58, + "cpu": 88, + "mu": 6064, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Attribute\\Input\\Query::getValue", + "Spiral\\Filters\\Attribute\\Input\\Query::getSchema", + "Spiral\\Filters\\Attribute\\Input\\Post::getValue", + "Spiral\\Filters\\Attribute\\Input\\Post::getSchema", + "Spiral\\Filters\\Attribute\\Input\\Attribute::getValue", + "Spiral\\Filters\\Attribute\\Input\\Attribute::getSchema", + "Spiral\\Filters\\Attribute\\Input\\Route::getValue", + "Spiral\\Filters\\Attribute\\Input\\Route::getSchema", + "Spiral\\Filters\\Attribute\\Input\\Server::getValue", + "Spiral\\Filters\\Attribute\\Input\\Server::getSchema" + ] + }, + "Spiral\\Http\\Request\\InputManager::findBagDefinition": { + "ct": 8, + "wt": 18, + "cpu": 26, + "mu": 1200, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputManager::hasBag", + "Spiral\\Http\\Request\\InputManager::bag" + ] + }, + "Spiral\\Http\\Request\\InputManager::hasBag": { + "ct": 64, + "wt": 107, + "cpu": 140, + "mu": 1248, + "pmu": 0, + "parents": [ + "Spiral\\Filter\\InputScope::getValue" + ] + }, + "Spiral\\Http\\Request\\InputManager::request": { + "ct": 68, + "wt": 1500, + "cpu": 1527, + "mu": 1832, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputManager::bag" + ] + }, + "Nyholm\\Psr7\\ServerRequest::getQueryParams": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputManager::bag" + ] + }, + "load::Request\/InputBag.php": { + "ct": 1, + "wt": 128, + "cpu": 128, + "mu": 19816, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputManager::bag" + ] + }, + "Spiral\\Http\\Request\\InputBag::__construct": { + "ct": 4, + "wt": 8, + "cpu": 9, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputManager::bag" + ] + }, + "Spiral\\Http\\Request\\InputManager::bag": { + "ct": 64, + "wt": 2041, + "cpu": 2160, + "mu": 30616, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputManager::__call" + ] + }, + "explode": { + "ct": 96, + "wt": 55, + "cpu": 87, + "mu": 38360, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputBag::dotGet", + "Spiral\\Filters\\Model\\Schema\\Builder::parseDefinition" + ] + }, + "load::Exception\/DotNotFoundException.php": { + "ct": 1, + "wt": 22, + "cpu": 22, + "mu": 3200, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputBag::dotGet" + ] + }, + "Spiral\\Http\\Request\\InputBag::dotGet": { + "ct": 64, + "wt": 80462, + "cpu": 80577, + "mu": 16349528, + "pmu": 275800, + "parents": [ + "Spiral\\Http\\Request\\InputBag::get" + ] + }, + "Spiral\\Http\\Request\\InputBag::get": { + "ct": 64, + "wt": 81140, + "cpu": 81179, + "mu": 25000, + "pmu": 275864, + "parents": [ + "Spiral\\Http\\Request\\InputManager::__call", + "Spiral\\Http\\Request\\ServerBag::get" + ] + }, + "Spiral\\Http\\Request\\InputManager::__call": { + "ct": 64, + "wt": 83668, + "cpu": 83697, + "mu": 58952, + "pmu": 275864, + "parents": [ + "Spiral\\Filter\\InputScope::getValue" + ] + }, + "Spiral\\Filter\\InputScope::getValue": { + "ct": 64, + "wt": 84362, + "cpu": 84383, + "mu": 63832, + "pmu": 275864, + "parents": [ + "Spiral\\Filters\\Attribute\\Input\\Query::getValue", + "Spiral\\Filters\\Model\\Schema\\InputMapper::map", + "Spiral\\Filters\\Attribute\\Input\\Post::getValue", + "Spiral\\Filters\\Attribute\\Input\\Attribute::getValue", + "Spiral\\Filters\\Attribute\\Input\\Route::getValue", + "Spiral\\Filters\\Attribute\\Input\\Server::getValue" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Query::getValue": { + "ct": 28, + "wt": 35231, + "cpu": 35240, + "mu": 46464, + "pmu": 188992, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "load::Attribute\/Setter.php": { + "ct": 1, + "wt": 47, + "cpu": 48, + "mu": 5152, + "pmu": 0, + "parents": [ + "ReflectionProperty::getAttributes" + ] + }, + "ReflectionProperty::getDeclaringClass": { + "ct": 64, + "wt": 39, + "cpu": 73, + "mu": 7408, + "pmu": 0, + "parents": [ + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyAnnotations", + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyImports" + ] + }, + "ReflectionProperty::getName": { + "ct": 64, + "wt": 37, + "cpu": 57, + "mu": 1184, + "pmu": 0, + "parents": [ + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyAnnotations", + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyImports": { + "ct": 32, + "wt": 781, + "cpu": 794, + "mu": 6376, + "pmu": 0, + "parents": [ + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyAnnotations" + ] + }, + "ReflectionProperty::getDocComment": { + "ct": 32, + "wt": 15, + "cpu": 30, + "mu": 632, + "pmu": 0, + "parents": [ + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyAnnotations" + ] + }, + "strpos": { + "ct": 44, + "wt": 41, + "cpu": 49, + "mu": 2808, + "pmu": 0, + "parents": [ + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyAnnotations", + "Monolog\\Processor\\PsrLogMessageProcessor::__invoke", + "Monolog\\Utils::getClass", + "Monolog\\Formatter\\LineFormatter::format", + "Monolog\\Handler\\StreamHandler::getDirFromStream" + ] + }, + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyAnnotations": { + "ct": 32, + "wt": 1844, + "cpu": 1864, + "mu": 12520, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\DoctrineAnnotationReader::Spiral\\Attributes\\Internal\\{closure}" + ] + }, + "Spiral\\Attributes\\Internal\\DoctrineAnnotationReader::Spiral\\Attributes\\Internal\\{closure}": { + "ct": 32, + "wt": 2010, + "cpu": 2025, + "mu": 8128, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\DoctrineAnnotationReader::getPropertyMetadata" + ] + }, + "Spiral\\Attributes\\Internal\\DoctrineAnnotationReader::getPropertyMetadata": { + "ct": 32, + "wt": 2179, + "cpu": 2196, + "mu": 26232, + "pmu": 0, + "parents": [ + "Spiral\\Attributes\\Internal\\Decorator::getPropertyMetadata" + ] + }, + "Spiral\\Attributes\\Reader::firstPropertyMetadata": { + "ct": 32, + "wt": 3813, + "cpu": 3827, + "mu": 15936, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::setValue" + ] + }, + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::setValue": { + "ct": 32, + "wt": 3941, + "cpu": 3951, + "mu": 16632, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Query::getSchema": { + "ct": 28, + "wt": 90, + "cpu": 103, + "mu": 2160, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map": { + "ct": 2, + "wt": 50293, + "cpu": 50296, + "mu": 128544, + "pmu": 251296, + "parents": [ + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "load::Schema\/InputMapper.php": { + "ct": 1, + "wt": 156, + "cpu": 158, + "mu": 16200, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "Spiral\\Filters\\Model\\Schema\\InputMapper::__construct": { + "ct": 2, + "wt": 2, + "cpu": 4, + "mu": 632, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "load::Schema\/Builder.php": { + "ct": 1, + "wt": 130, + "cpu": 131, + "mu": 22032, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "str_contains": { + "ct": 32, + "wt": 14, + "cpu": 22, + "mu": 568, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\Builder::parseDefinition" + ] + }, + "Spiral\\Filters\\Model\\Schema\\Builder::parseDefinition": { + "ct": 32, + "wt": 127, + "cpu": 138, + "mu": 14976, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\Builder::makeSchema" + ] + }, + "Spiral\\Filters\\Model\\Schema\\Builder::makeSchema": { + "ct": 2, + "wt": 246, + "cpu": 247, + "mu": 17664, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "Spiral\\Filters\\Model\\Schema\\InputMapper::map": { + "ct": 2, + "wt": 43896, + "cpu": 43900, + "mu": 2000, + "pmu": 24568, + "parents": [ + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "Spiral\\Models\\AbstractEntity::__construct": { + "ct": 2, + "wt": 3, + "cpu": 4, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Models\\SchematicEntity::__construct" + ] + }, + "Spiral\\Models\\SchematicEntity::__construct": { + "ct": 2, + "wt": 12, + "cpu": 13, + "mu": 1248, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "load::Model\/FilterBag.php": { + "ct": 1, + "wt": 70, + "cpu": 71, + "mu": 3808, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "Spiral\\Filters\\Model\\FilterBag::__construct": { + "ct": 2, + "wt": 7, + "cpu": 7, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "Spiral\\Models\\AbstractEntity::getValue": { + "ct": 2, + "wt": 4, + "cpu": 5, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Models\\AbstractEntity::toArray" + ] + }, + "Spiral\\Models\\AbstractEntity::toArray": { + "ct": 2, + "wt": 11, + "cpu": 13, + "mu": 1280, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Interceptor\\PopulateDataFromEntityInterceptor::process" + ] + }, + "Spiral\\Filters\\Model\\Filter::setData": { + "ct": 2, + "wt": 4, + "cpu": 4, + "mu": 632, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Interceptor\\PopulateDataFromEntityInterceptor::process" + ] + }, + "Spiral\\Filters\\Model\\Interceptor\\Core::callAction": { + "ct": 2, + "wt": 3, + "cpu": 5, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Core\\InterceptorPipeline::callAction@4" + ] + }, + "Spiral\\Core\\InterceptorPipeline::callAction@4": { + "ct": 2, + "wt": 11, + "cpu": 11, + "mu": 1296, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Interceptor\\ValidateFilterInterceptor::process" + ] + }, + "Spiral\\Filters\\Model\\Interceptor\\ValidateFilterInterceptor::process": { + "ct": 2, + "wt": 20, + "cpu": 23, + "mu": 1992, + "pmu": 0, + "parents": [ + "Spiral\\Core\\InterceptorPipeline::callAction@3" + ] + }, + "Spiral\\Core\\InterceptorPipeline::callAction@3": { + "ct": 2, + "wt": 30, + "cpu": 31, + "mu": 2688, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Interceptor\\PopulateDataFromEntityInterceptor::process" + ] + }, + "Spiral\\Filters\\Model\\Interceptor\\PopulateDataFromEntityInterceptor::process": { + "ct": 2, + "wt": 65, + "cpu": 66, + "mu": 5424, + "pmu": 0, + "parents": [ + "Spiral\\Core\\InterceptorPipeline::callAction@2" + ] + }, + "Spiral\\Core\\InterceptorPipeline::callAction@2": { + "ct": 2, + "wt": 77, + "cpu": 78, + "mu": 6088, + "pmu": 0, + "parents": [ + "Spiral\\Core\\InterceptableCore::callAction@1" + ] + }, + "Spiral\\Core\\InterceptableCore::callAction@1": { + "ct": 2, + "wt": 95, + "cpu": 97, + "mu": 7400, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\FilterProvider::createFilter" + ] + }, + "Spiral\\Filters\\Model\\FilterProvider::createFilter": { + "ct": 2, + "wt": 96772, + "cpu": 96774, + "mu": 216496, + "pmu": 275864, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection" + ] + }, + "Spiral\\Models\\AbstractEntity::flushFields": { + "ct": 2, + "wt": 4, + "cpu": 4, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Models\\AbstractEntity::__destruct" + ] + }, + "Spiral\\Models\\AbstractEntity::__destruct": { + "ct": 2, + "wt": 10, + "cpu": 10, + "mu": 1280, + "pmu": 0, + "parents": [ + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection" + ] + }, + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection": { + "ct": 2, + "wt": 101092, + "cpu": 101093, + "mu": 293904, + "pmu": 561768, + "parents": [ + "Spiral\\Core\\AbstractCore::callAction" + ] + }, + "load::Input\/Post.php": { + "ct": 1, + "wt": 62, + "cpu": 63, + "mu": 6224, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Post::__construct": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 584, + "pmu": 0, + "parents": [ + "ReflectionClass::newInstanceArgs" + ] + }, + "Nyholm\\Psr7\\ServerRequest::getParsedBody": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputManager::bag" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Post::getValue": { + "ct": 1, + "wt": 1080, + "cpu": 1080, + "mu": 5160, + "pmu": 28024, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Post::getSchema": { + "ct": 1, + "wt": 6, + "cpu": 7, + "mu": 1296, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "load::Input\/Attribute.php": { + "ct": 1, + "wt": 98, + "cpu": 99, + "mu": 6296, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Attribute::__construct": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 600, + "pmu": 0, + "parents": [ + "ReflectionClass::newInstanceArgs" + ] + }, + "Nyholm\\Psr7\\ServerRequest::getAttributes": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputManager::bag" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Attribute::getValue": { + "ct": 1, + "wt": 1492, + "cpu": 1492, + "mu": 3048, + "pmu": 6704, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Attribute::getSchema": { + "ct": 1, + "wt": 7, + "cpu": 8, + "mu": 1336, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "load::Input\/Route.php": { + "ct": 1, + "wt": 88, + "cpu": 89, + "mu": 7176, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Route::__construct": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 584, + "pmu": 0, + "parents": [ + "ReflectionClass::newInstanceArgs" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Route::getValue": { + "ct": 1, + "wt": 1454, + "cpu": 1455, + "mu": 2288, + "pmu": 9080, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Route::getSchema": { + "ct": 1, + "wt": 6, + "cpu": 6, + "mu": 1312, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "load::Input\/Server.php": { + "ct": 1, + "wt": 80, + "cpu": 82, + "mu": 6256, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Server::__construct": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 584, + "pmu": 0, + "parents": [ + "ReflectionClass::newInstanceArgs" + ] + }, + "Nyholm\\Psr7\\ServerRequest::getServerParams": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputManager::bag" + ] + }, + "load::Request\/ServerBag.php": { + "ct": 1, + "wt": 95, + "cpu": 96, + "mu": 8760, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\InputManager::bag" + ] + }, + "Spiral\\Http\\Request\\ServerBag::normalize": { + "ct": 2, + "wt": 66, + "cpu": 67, + "mu": 1912, + "pmu": 0, + "parents": [ + "Spiral\\Http\\Request\\ServerBag::get" + ] + }, + "Spiral\\Http\\Request\\ServerBag::get": { + "ct": 2, + "wt": 2553, + "cpu": 2554, + "mu": 3504, + "pmu": 18496, + "parents": [ + "Spiral\\Http\\Request\\InputManager::__call" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Server::getValue": { + "ct": 1, + "wt": 1545, + "cpu": 1545, + "mu": 12960, + "pmu": 18496, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "Spiral\\Filters\\Attribute\\Input\\Server::getSchema": { + "ct": 1, + "wt": 5, + "cpu": 5, + "mu": 1304, + "pmu": 0, + "parents": [ + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map" + ] + }, + "load::src\/QueueManager.php": { + "ct": 1, + "wt": 230, + "cpu": 231, + "mu": 15040, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "ReflectionType::__toString": { + "ct": 11, + "wt": 9, + "cpu": 12, + "mu": 1328, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "ReflectionParameter::isPassedByReference": { + "ct": 11, + "wt": 7, + "cpu": 13, + "mu": 1184, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "ReflectionParameter::isDefaultValueConstant": { + "ct": 2, + "wt": 1, + "cpu": 3, + "mu": 1200, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager", + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "Spiral\\Queue\\QueueManager::__construct": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager" + ] + }, + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager": { + "ct": 1, + "wt": 2985, + "cpu": 2986, + "mu": 37832, + "pmu": 71208, + "parents": [ + "ReflectionMethod::invokeArgs" + ] + }, + "Spiral\\Queue\\Config\\QueueConfig::getDefaultDriver": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::getDefaultDriver" + ] + }, + "Spiral\\Queue\\QueueManager::getDefaultDriver": { + "ct": 1, + "wt": 6, + "cpu": 6, + "mu": 1248, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::getConnection" + ] + }, + "Spiral\\Queue\\Config\\QueueConfig::getAliases": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::getConnection" + ] + }, + "Spiral\\Queue\\Config\\QueueConfig::getConnections": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\Config\\QueueConfig::getConnection" + ] + }, + "Spiral\\Queue\\Config\\QueueConfig::getConnection": { + "ct": 1, + "wt": 9, + "cpu": 9, + "mu": 1640, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "load::Driver\/SyncDriver.php": { + "ct": 1, + "wt": 106, + "cpu": 107, + "mu": 6400, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "load::src\/QueueTrait.php": { + "ct": 1, + "wt": 37, + "cpu": 38, + "mu": 3376, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "load::Consume\/Core.php": { + "ct": 1, + "wt": 239, + "cpu": 242, + "mu": 10136, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "Spiral\\Queue\\Interceptor\\Consume\\Core::__construct": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "Spiral\\Queue\\Config\\QueueConfig::getConsumeInterceptors": { + "ct": 1, + "wt": 4, + "cpu": 4, + "mu": 632, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "load::Consume\/ErrorHandlerInterceptor.php": { + "ct": 1, + "wt": 116, + "cpu": 119, + "mu": 6744, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "load::Failed\/LogFailedJobHandler.php": { + "ct": 1, + "wt": 62, + "cpu": 63, + "mu": 4616, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "load::Failed\/FailedJobHandlerInterface.php": { + "ct": 1, + "wt": 32, + "cpu": 33, + "mu": 2976, + "pmu": 0, + "parents": [ + "class_exists" + ] + }, + "Spiral\\Queue\\Failed\\LogFailedJobHandler::__construct": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 632, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "Spiral\\Queue\\Interceptor\\Consume\\ErrorHandlerInterceptor::__construct": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 632, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "load::Consume\/Handler.php": { + "ct": 1, + "wt": 105, + "cpu": 107, + "mu": 9160, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "Spiral\\Queue\\Interceptor\\Consume\\Handler::__construct": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 632, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler" + ] + }, + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler": { + "ct": 1, + "wt": 1221, + "cpu": 1265, + "mu": 33768, + "pmu": 0, + "parents": [ + "ReflectionMethod::invokeArgs@1" + ] + }, + "ReflectionMethod::invokeArgs@1": { + "ct": 1, + "wt": 1228, + "cpu": 1270, + "mu": 34416, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "Spiral\\Queue\\Driver\\SyncDriver::__construct": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "load::Push\/Core.php": { + "ct": 1, + "wt": 115, + "cpu": 117, + "mu": 11704, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "Spiral\\Queue\\Interceptor\\Push\\Core::__construct": { + "ct": 1, + "wt": 3, + "cpu": 3, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "Spiral\\Queue\\Config\\QueueConfig::getPushInterceptors": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "load::src\/Queue.php": { + "ct": 1, + "wt": 52, + "cpu": 54, + "mu": 4984, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "Spiral\\Queue\\Queue::__construct": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 584, + "pmu": 0, + "parents": [ + "Spiral\\Queue\\QueueManager::resolveConnection" + ] + }, + "Spiral\\Queue\\QueueManager::resolveConnection": { + "ct": 1, + "wt": 9141, + "cpu": 9184, + "mu": 112272, + "pmu": 70504, + "parents": [ + "Spiral\\Queue\\QueueManager::getConnection" + ] + }, + "Spiral\\Queue\\QueueManager::getConnection": { + "ct": 1, + "wt": 9160, + "cpu": 9203, + "mu": 114896, + "pmu": 70504, + "parents": [ + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueue" + ] + }, + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueue": { + "ct": 1, + "wt": 9163, + "cpu": 9208, + "mu": 115544, + "pmu": 70504, + "parents": [ + "ReflectionMethod::invokeArgs" + ] + }, + "App\\Controller\\HomeController::__construct": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 600, + "pmu": 0, + "parents": [ + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}" + ] + }, + "Spiral\\Prototype\\ClassNode\\Type::name": { + "ct": 2, + "wt": 1, + "cpu": 5, + "mu": 1184, + "pmu": 0, + "parents": [ + "Spiral\\Prototype\\PrototypeRegistry::resolveProperty", + "App\\Controller\\HomeController::__get" + ] + }, + "Spiral\\Prototype\\PrototypeRegistry::resolveProperty": { + "ct": 1, + "wt": 23, + "cpu": 23, + "mu": 2528, + "pmu": 0, + "parents": [ + "App\\Controller\\HomeController::__get" + ] + }, + "App\\Controller\\HomeController::__get": { + "ct": 1, + "wt": 62, + "cpu": 63, + "mu": 5056, + "pmu": 0, + "parents": [ + "App\\Controller\\HomeController::index" + ] + }, + "Monolog\\Handler\\AbstractHandler::isHandling": { + "ct": 4, + "wt": 6, + "cpu": 8, + "mu": 1168, + "pmu": 0, + "parents": [ + "Monolog\\Logger::addRecord", + "Monolog\\Handler\\AbstractProcessingHandler::handle" + ] + }, + "Monolog\\Logger::getLevelName": { + "ct": 2, + "wt": 5, + "cpu": 7, + "mu": 584, + "pmu": 0, + "parents": [ + "Monolog\\Logger::addRecord" + ] + }, + "load::Monolog\/DateTimeImmutable.php": { + "ct": 1, + "wt": 63, + "cpu": 64, + "mu": 6512, + "pmu": 0, + "parents": [ + "Monolog\\Logger::addRecord" + ] + }, + "DateTimeImmutable::__construct": { + "ct": 1, + "wt": 6, + "cpu": 6, + "mu": 832, + "pmu": 0, + "parents": [ + "Monolog\\DateTimeImmutable::__construct" + ] + }, + "Monolog\\DateTimeImmutable::__construct": { + "ct": 2, + "wt": 16, + "cpu": 17, + "mu": 1728, + "pmu": 0, + "parents": [ + "Monolog\\Logger::addRecord" + ] + }, + "Monolog\\Processor\\PsrLogMessageProcessor::__invoke": { + "ct": 2, + "wt": 9, + "cpu": 11, + "mu": 1216, + "pmu": 0, + "parents": [ + "Monolog\\Logger::addRecord" + ] + }, + "Monolog\\Handler\\AbstractProcessingHandler::getFormatter": { + "ct": 2, + "wt": 4, + "cpu": 5, + "mu": 632, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\AbstractProcessingHandler::handle" + ] + }, + "is_scalar": { + "ct": 13, + "wt": 8, + "cpu": 12, + "mu": 2272, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize", + "Monolog\\Formatter\\NormalizerFormatter::normalize@1", + "Monolog\\Formatter\\NormalizerFormatter::normalize@2", + "Monolog\\Formatter\\LineFormatter::convertToString" + ] + }, + "is_array": { + "ct": 5, + "wt": 2, + "cpu": 3, + "mu": 1704, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize", + "Monolog\\Formatter\\NormalizerFormatter::normalize@1", + "Monolog\\Formatter\\NormalizerFormatter::normalize@2" + ] + }, + "is_float": { + "ct": 4, + "wt": 1, + "cpu": 4, + "mu": 568, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize@1" + ] + }, + "Monolog\\Formatter\\NormalizerFormatter::normalize@1": { + "ct": 8, + "wt": 109, + "cpu": 114, + "mu": 14304, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize" + ] + }, + "is_object": { + "ct": 1, + "wt": 1, + "cpu": 1, + "mu": 568, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize@2" + ] + }, + "method_exists": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 568, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize@2" + ] + }, + "json_encode": { + "ct": 4, + "wt": 8, + "cpu": 10, + "mu": 2112, + "pmu": 0, + "parents": [ + "Monolog\\Utils::jsonEncode", + "App\\Controller\\HomeController::index" + ] + }, + "Monolog\\Utils::jsonEncode": { + "ct": 2, + "wt": 15, + "cpu": 17, + "mu": 1696, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::toJson" + ] + }, + "Monolog\\Formatter\\NormalizerFormatter::toJson": { + "ct": 2, + "wt": 24, + "cpu": 25, + "mu": 2960, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize@2", + "Monolog\\Formatter\\LineFormatter::convertToString" + ] + }, + "json_decode": { + "ct": 1, + "wt": 8, + "cpu": 9, + "mu": 1776, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize@2" + ] + }, + "Monolog\\Utils::getClass": { + "ct": 1, + "wt": 5, + "cpu": 6, + "mu": 1184, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize@2" + ] + }, + "Monolog\\Formatter\\NormalizerFormatter::normalize@2": { + "ct": 4, + "wt": 67, + "cpu": 72, + "mu": 9544, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize@1" + ] + }, + "DateTimeImmutable::format": { + "ct": 1, + "wt": 3, + "cpu": 5, + "mu": 824, + "pmu": 0, + "parents": [ + "Monolog\\DateTimeImmutable::jsonSerialize" + ] + }, + "Monolog\\DateTimeImmutable::jsonSerialize": { + "ct": 1, + "wt": 8, + "cpu": 8, + "mu": 1472, + "pmu": 0, + "parents": [ + "Monolog\\DateTimeImmutable::__toString" + ] + }, + "Monolog\\DateTimeImmutable::__toString": { + "ct": 1, + "wt": 10, + "cpu": 10, + "mu": 2136, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::formatDate" + ] + }, + "Monolog\\Formatter\\NormalizerFormatter::formatDate": { + "ct": 1, + "wt": 14, + "cpu": 15, + "mu": 2800, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize@1" + ] + }, + "Monolog\\Formatter\\NormalizerFormatter::normalize": { + "ct": 1, + "wt": 132, + "cpu": 133, + "mu": 16608, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::format" + ] + }, + "Monolog\\Formatter\\NormalizerFormatter::format": { + "ct": 1, + "wt": 136, + "cpu": 136, + "mu": 17256, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\LineFormatter::format" + ] + }, + "is_bool": { + "ct": 4, + "wt": 1, + "cpu": 1, + "mu": 568, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\LineFormatter::convertToString" + ] + }, + "Monolog\\Formatter\\LineFormatter::convertToString": { + "ct": 4, + "wt": 25, + "cpu": 25, + "mu": 2784, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\LineFormatter::stringify" + ] + }, + "Monolog\\Formatter\\LineFormatter::replaceNewlines": { + "ct": 4, + "wt": 11, + "cpu": 11, + "mu": 1232, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\LineFormatter::stringify" + ] + }, + "Monolog\\Formatter\\LineFormatter::stringify": { + "ct": 4, + "wt": 47, + "cpu": 47, + "mu": 4728, + "pmu": 0, + "parents": [ + "Monolog\\Formatter\\LineFormatter::format" + ] + }, + "Monolog\\Formatter\\LineFormatter::format": { + "ct": 1, + "wt": 219, + "cpu": 219, + "mu": 24008, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\AbstractProcessingHandler::handle" + ] + }, + "is_resource": { + "ct": 3, + "wt": 1, + "cpu": 3, + "mu": 552, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::write" + ] + }, + "dirname": { + "ct": 1, + "wt": 0, + "cpu": 2, + "mu": 664, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::getDirFromStream" + ] + }, + "Monolog\\Handler\\StreamHandler::getDirFromStream": { + "ct": 1, + "wt": 8, + "cpu": 8, + "mu": 1960, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::createDir" + ] + }, + "is_dir": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 552, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::createDir" + ] + }, + "Monolog\\Handler\\StreamHandler::createDir": { + "ct": 1, + "wt": 16, + "cpu": 17, + "mu": 3224, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::write" + ] + }, + "set_error_handler": { + "ct": 1, + "wt": 2, + "cpu": 2, + "mu": 568, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::write" + ] + }, + "fopen": { + "ct": 2, + "wt": 17, + "cpu": 19, + "mu": 2216, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::write", + "Nyholm\\Psr7\\Stream::create" + ] + }, + "restore_error_handler": { + "ct": 1, + "wt": 1, + "cpu": 1, + "mu": 192, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::write" + ] + }, + "stream_set_chunk_size": { + "ct": 1, + "wt": 0, + "cpu": 2, + "mu": 568, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::write" + ] + }, + "flock": { + "ct": 2, + "wt": 76, + "cpu": 79, + "mu": 552, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::write" + ] + }, + "fwrite": { + "ct": 4, + "wt": 65, + "cpu": 67, + "mu": 1944, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::streamWrite", + "Nyholm\\Psr7\\Stream::create", + "Nyholm\\Psr7\\Stream::write" + ] + }, + "Monolog\\Handler\\StreamHandler::streamWrite": { + "ct": 1, + "wt": 71, + "cpu": 71, + "mu": 1200, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\StreamHandler::write" + ] + }, + "Monolog\\Handler\\StreamHandler::write": { + "ct": 1, + "wt": 213, + "cpu": 214, + "mu": 13504, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\RotatingFileHandler::write" + ] + }, + "Monolog\\Handler\\RotatingFileHandler::write": { + "ct": 1, + "wt": 228, + "cpu": 229, + "mu": 14800, + "pmu": 0, + "parents": [ + "Monolog\\Handler\\AbstractProcessingHandler::handle" + ] + }, + "Monolog\\Handler\\AbstractProcessingHandler::handle": { + "ct": 1, + "wt": 466, + "cpu": 467, + "mu": 38664, + "pmu": 0, + "parents": [ + "Monolog\\Logger::addRecord" + ] + }, + "Monolog\\Logger::addRecord": { + "ct": 1, + "wt": 636, + "cpu": 636, + "mu": 51000, + "pmu": 0, + "parents": [ + "Monolog\\Logger::info" + ] + }, + "Monolog\\Logger::info": { + "ct": 1, + "wt": 642, + "cpu": 643, + "mu": 50928, + "pmu": 0, + "parents": [ + "App\\Controller\\HomeController::index" + ] + }, + "App\\Controller\\HomeController::index": { + "ct": 1, + "wt": 719, + "cpu": 719, + "mu": 57616, + "pmu": 0, + "parents": [ + "ReflectionMethod::invokeArgs" + ] + }, + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}": { + "ct": 1, + "wt": 14228, + "cpu": 14272, + "mu": 221080, + "pmu": 141712, + "parents": [ + "Spiral\\Core\\AbstractCore::callAction" + ] + }, + "Spiral\\Core\\AbstractCore::callAction": { + "ct": 1, + "wt": 115694, + "cpu": 115737, + "mu": 526880, + "pmu": 703480, + "parents": [ + "Spiral\\Core\\InterceptorPipeline::callAction@1" + ] + }, + "Spiral\\Core\\InterceptorPipeline::callAction@1": { + "ct": 1, + "wt": 115701, + "cpu": 115743, + "mu": 588840, + "pmu": 703480, + "parents": [ + "Spiral\\Filters\\Interceptor\\FilterInterceptor::process" + ] + }, + "Spiral\\Filters\\Interceptor\\FilterInterceptor::process": { + "ct": 1, + "wt": 115760, + "cpu": 115803, + "mu": 596920, + "pmu": 703480, + "parents": [ + "Spiral\\Core\\InterceptorPipeline::callAction" + ] + }, + "Spiral\\Core\\InterceptorPipeline::callAction": { + "ct": 1, + "wt": 115765, + "cpu": 115809, + "mu": 597568, + "pmu": 703480, + "parents": [ + "Spiral\\Core\\InterceptableCore::callAction" + ] + }, + "Spiral\\Core\\InterceptableCore::callAction": { + "ct": 1, + "wt": 115775, + "cpu": 115819, + "mu": 598504, + "pmu": 703480, + "parents": [ + "Spiral\\Router\\CoreHandler::Spiral\\Router\\{closure}@1" + ] + }, + "Spiral\\Router\\CoreHandler::Spiral\\Router\\{closure}@1": { + "ct": 1, + "wt": 115783, + "cpu": 115826, + "mu": 599152, + "pmu": 703480, + "parents": [ + "ReflectionFunction::invokeArgs@1" + ] + }, + "ReflectionFunction::invokeArgs@1": { + "ct": 1, + "wt": 115787, + "cpu": 115830, + "mu": 599800, + "pmu": 703480, + "parents": [ + "Spiral\\Router\\CoreHandler::Spiral\\Router\\{closure}" + ] + }, + "Spiral\\Router\\CoreHandler::Spiral\\Router\\{closure}": { + "ct": 1, + "wt": 115845, + "cpu": 115888, + "mu": 602648, + "pmu": 703480, + "parents": [ + "Spiral\\Router\\CoreHandler::handle" + ] + }, + "ob_get_clean": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": -15928, + "pmu": 0, + "parents": [ + "Spiral\\Router\\CoreHandler::handle" + ] + }, + "load::src\/Stream.php": { + "ct": 1, + "wt": 363, + "cpu": 366, + "mu": 43088, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Response::getBody" + ] + }, + "load::src\/StreamInterface.php": { + "ct": 1, + "wt": 100, + "cpu": 102, + "mu": 83672, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Response::getBody" + ] + }, + "Nyholm\\Psr7\\Stream::__construct": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 568, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Stream::create" + ] + }, + "stream_get_meta_data": { + "ct": 1, + "wt": 2, + "cpu": 2, + "mu": 1288, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Stream::create" + ] + }, + "fseek": { + "ct": 1, + "wt": 1, + "cpu": 1, + "mu": 536, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Stream::create" + ] + }, + "Nyholm\\Psr7\\Stream::create": { + "ct": 1, + "wt": 26, + "cpu": 27, + "mu": 5112, + "pmu": 0, + "parents": [ + "Nyholm\\Psr7\\Response::getBody" + ] + }, + "Nyholm\\Psr7\\Response::getBody": { + "ct": 2, + "wt": 603, + "cpu": 604, + "mu": 115192, + "pmu": 0, + "parents": [ + "Spiral\\Router\\CoreHandler::wrapResponse" + ] + }, + "Nyholm\\Psr7\\Stream::write": { + "ct": 2, + "wt": 8, + "cpu": 9, + "mu": 1488, + "pmu": 0, + "parents": [ + "Spiral\\Router\\CoreHandler::wrapResponse" + ] + }, + "Spiral\\Router\\CoreHandler::wrapResponse": { + "ct": 1, + "wt": 623, + "cpu": 624, + "mu": 117392, + "pmu": 0, + "parents": [ + "Spiral\\Router\\CoreHandler::handle" + ] + }, + "Spiral\\Router\\CoreHandler::handle": { + "ct": 1, + "wt": 116875, + "cpu": 116919, + "mu": 755432, + "pmu": 703480, + "parents": [ + "Spiral\\Http\\Pipeline::Spiral\\Http\\{closure}@1" + ] + }, + "Spiral\\Http\\Pipeline::Spiral\\Http\\{closure}@1": { + "ct": 1, + "wt": 116881, + "cpu": 116924, + "mu": 755760, + "pmu": 703480, + "parents": [ + "Spiral\\Http\\Pipeline::process" + ] + }, + "Spiral\\Http\\Pipeline::process": { + "ct": 1, + "wt": 116906, + "cpu": 116948, + "mu": 756392, + "pmu": 703480, + "parents": [ + "Spiral\\Router\\Route::handle" + ] + }, + "Spiral\\Router\\Route::handle": { + "ct": 1, + "wt": 121185, + "cpu": 121227, + "mu": 890816, + "pmu": 836240, + "parents": [ + "Spiral\\Router\\Router::Spiral\\Router\\{closure}" + ] + }, + "Spiral\\Router\\Router::Spiral\\Router\\{closure}": { + "ct": 1, + "wt": 121777, + "cpu": 121820, + "mu": 918024, + "pmu": 836240, + "parents": [ + "ReflectionFunction::invokeArgs" + ] + }, + "ReflectionFunction::invokeArgs": { + "ct": 1, + "wt": 121782, + "cpu": 121825, + "mu": 917296, + "pmu": 836240, + "parents": [ + "Spiral\\Router\\Router::handle" + ] + }, + "Spiral\\Router\\Router::handle": { + "ct": 1, + "wt": 121899, + "cpu": 121943, + "mu": 924720, + "pmu": 836240, + "parents": [ + "Spiral\\Http\\Pipeline::Spiral\\Http\\{closure}" + ] + }, + "Spiral\\Http\\Pipeline::Spiral\\Http\\{closure}": { + "ct": 1, + "wt": 121910, + "cpu": 121953, + "mu": 925336, + "pmu": 836240, + "parents": [ + "main()" + ] + }, + "main()": { + "ct": 1, + "wt": 121942, + "cpu": 121982, + "mu": 925088, + "pmu": 836240, + "parents": [ + null + ] + }, + "Monolog\\Formatter\\NormalizerFormatter::normalize@3": { + "ct": 708, + "wt": 34109, + "cpu": 34402, + "mu": 267096, + "pmu": 147872, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize@2" + ] + }, + "Monolog\\Formatter\\NormalizerFormatter::normalize@4": { + "ct": 3540, + "wt": 7459, + "cpu": 9085, + "mu": 600, + "pmu": 12672, + "parents": [ + "Monolog\\Formatter\\NormalizerFormatter::normalize@3" + ] + } + }, + { + "Spiral\\Router\\Router::handle": { + "ReflectionFunction::invokeArgs": { + "ct": 1, + "wt": 121782, + "cpu": 121825, + "mu": 917296, + "pmu": 836240 + } + }, + "Spiral\\Router\\AbstractRoute::match": { + "Spiral\\Router\\UriHandler::match": { + "ct": 4, + "wt": 465, + "cpu": 468, + "mu": 18408, + "pmu": 0 + } + }, + "Spiral\\Router\\UriHandler::match": { + "array_merge": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 928, + "pmu": 0 + } + }, + "Spiral\\Router\\UriHandler::compile": { + "sprintf": { + "ct": 6, + "wt": 6, + "cpu": 7, + "mu": 2472, + "pmu": 0 + } + }, + "Spiral\\Router\\UriHandler::fetchTarget": { + "trim": { + "ct": 4, + "wt": 2, + "cpu": 4, + "mu": 552, + "pmu": 0 + } + }, + "Spiral\\Router\\Router::matchRoute": { + "Spiral\\Router\\AbstractRoute::match": { + "ct": 4, + "wt": 529, + "cpu": 532, + "mu": 22768, + "pmu": 0 + } + }, + "array_filter": { + "Spiral\\Router\\UriHandler::Spiral\\Router\\{closure}": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 568, + "pmu": 0 + } + }, + "Spiral\\Router\\Router::Spiral\\Router\\{closure}": { + "Spiral\\Router\\Route::handle": { + "ct": 1, + "wt": 121185, + "cpu": 121227, + "mu": 890816, + "pmu": 836240 + } + }, + "Spiral\\Router\\Target\\AbstractTarget::coreHandler": { + "Spiral\\Router\\CoreHandler::__construct": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 600, + "pmu": 0 + } + }, + "class_exists": { + "load::Failed\/FailedJobHandlerInterface.php": { + "ct": 1, + "wt": 32, + "cpu": 33, + "mu": 2976, + "pmu": 0 + } + }, + "Spiral\\Core\\AbstractCore::__construct": { + "array_pop": { + "ct": 4, + "wt": 3, + "cpu": 5, + "mu": 520, + "pmu": 0 + } + }, + "Spiral\\Bootloader\\DomainBootloader::domainCore": { + "Spiral\\Core\\InterceptableCore::addInterceptor": { + "ct": 1, + "wt": 6, + "cpu": 6, + "mu": 1640, + "pmu": 0 + } + }, + "Spiral\\Core\\InterceptableCore::__construct": { + "Spiral\\Core\\InterceptorPipeline::__construct": { + "ct": 4, + "wt": 8, + "cpu": 10, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Core\\InterceptableCore::addInterceptor": { + "Spiral\\Core\\InterceptorPipeline::addInterceptor": { + "ct": 4, + "wt": 7, + "cpu": 8, + "mu": 1728, + "pmu": 0 + } + }, + "ReflectionMethod::invokeArgs": { + "App\\Controller\\HomeController::index": { + "ct": 1, + "wt": 719, + "cpu": 719, + "mu": 57616, + "pmu": 0 + } + }, + "Spiral\\Router\\Target\\AbstractTarget::getHandler": { + "Spiral\\Router\\CoreHandler::withVerbActions": { + "ct": 1, + "wt": 2, + "cpu": 2, + "mu": 792, + "pmu": 0 + } + }, + "Spiral\\Router\\Target\\Namespaced::resolveController": { + "sprintf": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 888, + "pmu": 0 + } + }, + "Doctrine\\Inflector\\Inflector::classify": { + "str_replace": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 552, + "pmu": 0 + } + }, + "Spiral\\Router\\Route::requestHandler": { + "Spiral\\Router\\Target\\AbstractTarget::getHandler": { + "ct": 1, + "wt": 4256, + "cpu": 4257, + "mu": 131752, + "pmu": 132760 + } + }, + "Spiral\\Router\\Route::handle": { + "Spiral\\Http\\Pipeline::process": { + "ct": 1, + "wt": 116906, + "cpu": 116948, + "mu": 756392, + "pmu": 703480 + } + }, + "Spiral\\Router\\CoreHandler::handle": { + "Spiral\\Router\\CoreHandler::wrapResponse": { + "ct": 1, + "wt": 623, + "cpu": 624, + "mu": 117392, + "pmu": 0 + } + }, + "Nyholm\\Psr7\\Factory\\Psr17Factory::createResponse": { + "Nyholm\\Psr7\\Response::__construct": { + "ct": 1, + "wt": 8, + "cpu": 8, + "mu": 1216, + "pmu": 0 + } + }, + "Nyholm\\Psr7\\Response::__construct": { + "Nyholm\\Psr7\\Response::setHeaders": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 568, + "pmu": 0 + } + }, + "Spiral\\Nyholm\\ResponseFactory::createResponse": { + "Nyholm\\Psr7\\Response::withAddedHeader": { + "ct": 1, + "wt": 33, + "cpu": 33, + "mu": 5704, + "pmu": 0 + } + }, + "Nyholm\\Psr7\\Response::validateAndTrimHeader": { + "trim": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 552, + "pmu": 0 + } + }, + "Nyholm\\Psr7\\Response::setHeaders": { + "strtr": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 592, + "pmu": 0 + } + }, + "Nyholm\\Psr7\\Response::withAddedHeader": { + "Nyholm\\Psr7\\Response::setHeaders": { + "ct": 1, + "wt": 27, + "cpu": 27, + "mu": 4896, + "pmu": 0 + } + }, + "Spiral\\Router\\CoreHandler::Spiral\\Router\\{closure}": { + "ReflectionFunction::invokeArgs@1": { + "ct": 1, + "wt": 115787, + "cpu": 115830, + "mu": 599800, + "pmu": 703480 + } + }, + "Spiral\\Core\\InterceptableCore::callAction": { + "Spiral\\Core\\InterceptorPipeline::callAction": { + "ct": 1, + "wt": 115765, + "cpu": 115809, + "mu": 597568, + "pmu": 703480 + } + }, + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getDeclaredFilters": { + "ReflectionClass::implementsInterface": { + "ct": 2, + "wt": 2, + "cpu": 3, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Filters\\Interceptor\\FilterInterceptor::getParameterClass": { + "ReflectionClass::__construct": { + "ct": 2, + "wt": 2, + "cpu": 2, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Filters\\Interceptor\\FilterInterceptor::process": { + "Spiral\\Core\\InterceptorPipeline::callAction@1": { + "ct": 1, + "wt": 115701, + "cpu": 115743, + "mu": 588840, + "pmu": 703480 + } + }, + "Spiral\\Core\\AbstractCore::callAction": { + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}": { + "ct": 1, + "wt": 14228, + "cpu": 14272, + "mu": 221080, + "pmu": 141712 + } + }, + "Spiral\\Bootloader\\Security\\FiltersBootloader::createInjection": { + "Spiral\\Models\\AbstractEntity::__destruct": { + "ct": 2, + "wt": 10, + "cpu": 10, + "mu": 1280, + "pmu": 0 + } + }, + "Spiral\\Bootloader\\Security\\FiltersBootloader::initFilterProvider": { + "Spiral\\Filters\\Model\\FilterProvider::__construct": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 632, + "pmu": 0 + } + }, + "Spiral\\Http\\Request\\InputManager::__construct": { + "array_merge": { + "ct": 1, + "wt": 1, + "cpu": 1, + "mu": 568, + "pmu": 0 + } + }, + "Spiral\\Filters\\Model\\FilterProvider::createFilter": { + "Spiral\\Core\\InterceptableCore::callAction@1": { + "ct": 2, + "wt": 95, + "cpu": 97, + "mu": 7400, + "pmu": 0 + } + }, + "Spiral\\Filters\\Model\\FilterProvider::createFilterInstance": { + "ReflectionClass::newInstanceArgs": { + "ct": 2, + "wt": 2, + "cpu": 2, + "mu": 1240, + "pmu": 0 + } + }, + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::map": { + "Spiral\\Filters\\Attribute\\Input\\Server::getSchema": { + "ct": 1, + "wt": 5, + "cpu": 5, + "mu": 1304, + "pmu": 0 + } + }, + "Spiral\\Attributes\\Composite\\Composite::Spiral\\Attributes\\Composite\\{closure}": { + "Spiral\\Attributes\\Internal\\Decorator::getPropertyMetadata": { + "ct": 96, + "wt": 2410, + "cpu": 2455, + "mu": 67920, + "pmu": 0 + } + }, + "Spiral\\Attributes\\Composite\\Composite::getPropertyMetadata": { + "iterator_to_array": { + "ct": 96, + "wt": 5286, + "cpu": 5341, + "mu": 33208, + "pmu": 0 + } + }, + "Spiral\\Attributes\\Internal\\NativeAttributeReader::getPropertyAttributes": { + "ReflectionProperty::getAttributes": { + "ct": 64, + "wt": 181, + "cpu": 204, + "mu": 24048, + "pmu": 0 + } + }, + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata": { + "ReflectionClass::newInstanceArgs": { + "ct": 32, + "wt": 128, + "cpu": 160, + "mu": 5648, + "pmu": 0 + } + }, + "ReflectionClass::newInstanceArgs": { + "Spiral\\Filters\\Attribute\\Input\\Server::__construct": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 584, + "pmu": 0 + } + }, + "iterator_to_array": { + "Spiral\\Attributes\\Internal\\AttributeReader::getPropertyMetadata": { + "ct": 96, + "wt": 4960, + "cpu": 4995, + "mu": 80176, + "pmu": 0 + } + }, + "Spiral\\Filters\\Attribute\\Input\\Query::getValue": { + "Spiral\\Filter\\InputScope::getValue": { + "ct": 28, + "wt": 35098, + "cpu": 35106, + "mu": 45136, + "pmu": 188992 + } + }, + "Spiral\\Http\\Request\\InputManager::hasBag": { + "Spiral\\Http\\Request\\InputManager::findBagDefinition": { + "ct": 4, + "wt": 12, + "cpu": 16, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Filter\\InputScope::getValue": { + "Spiral\\Http\\Request\\InputManager::__call": { + "ct": 64, + "wt": 83668, + "cpu": 83697, + "mu": 58952, + "pmu": 275864 + } + }, + "Spiral\\Http\\Request\\InputManager::request": { + "array_pop": { + "ct": 136, + "wt": 77, + "cpu": 108, + "mu": 552, + "pmu": 0 + } + }, + "Spiral\\Http\\Request\\InputManager::bag": { + "load::Request\/ServerBag.php": { + "ct": 1, + "wt": 95, + "cpu": 96, + "mu": 8760, + "pmu": 0 + } + }, + "Spiral\\Http\\Request\\InputManager::__call": { + "Spiral\\Http\\Request\\ServerBag::get": { + "ct": 2, + "wt": 2553, + "cpu": 2554, + "mu": 3504, + "pmu": 18496 + } + }, + "Spiral\\Http\\Request\\InputBag::dotGet": { + "Exception::__construct": { + "ct": 64, + "wt": 50, + "cpu": 68, + "mu": 568, + "pmu": 0 + } + }, + "Spiral\\Http\\Request\\InputBag::get": { + "Spiral\\Http\\Request\\InputBag::dotGet": { + "ct": 64, + "wt": 80462, + "cpu": 80577, + "mu": 16349528, + "pmu": 275800 + } + }, + "ReflectionProperty::getAttributes": { + "load::Attribute\/Setter.php": { + "ct": 1, + "wt": 47, + "cpu": 48, + "mu": 5152, + "pmu": 0 + } + }, + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyAnnotations": { + "strpos": { + "ct": 32, + "wt": 33, + "cpu": 40, + "mu": 584, + "pmu": 0 + } + }, + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyImports": { + "array_merge": { + "ct": 32, + "wt": 19, + "cpu": 35, + "mu": 584, + "pmu": 0 + } + }, + "Spiral\\Attributes\\Internal\\DoctrineAnnotationReader::Spiral\\Attributes\\Internal\\{closure}": { + "Doctrine\\Common\\Annotations\\AnnotationReader::getPropertyAnnotations": { + "ct": 32, + "wt": 1844, + "cpu": 1864, + "mu": 12520, + "pmu": 0 + } + }, + "Spiral\\Attributes\\Internal\\DoctrineAnnotationReader::getPropertyMetadata": { + "Spiral\\Attributes\\Internal\\DoctrineAnnotationReader::Spiral\\Attributes\\Internal\\{closure}": { + "ct": 32, + "wt": 2010, + "cpu": 2025, + "mu": 8128, + "pmu": 0 + } + }, + "Spiral\\Attributes\\Internal\\Decorator::getPropertyMetadata": { + "Spiral\\Attributes\\Internal\\DoctrineAnnotationReader::getPropertyMetadata": { + "ct": 32, + "wt": 2179, + "cpu": 2196, + "mu": 26232, + "pmu": 0 + } + }, + "Spiral\\Attributes\\Reader::firstPropertyMetadata": { + "Spiral\\Attributes\\Composite\\Composite::getPropertyMetadata": { + "ct": 32, + "wt": 3713, + "cpu": 3733, + "mu": 15272, + "pmu": 0 + } + }, + "Spiral\\Filters\\Model\\Schema\\AttributeMapper::setValue": { + "Spiral\\Attributes\\Reader::firstPropertyMetadata": { + "ct": 32, + "wt": 3813, + "cpu": 3827, + "mu": 15936, + "pmu": 0 + } + }, + "Spiral\\Filters\\Attribute\\Input\\Query::getSchema": { + "Spiral\\Filters\\Attribute\\Input\\AbstractInput::getKey": { + "ct": 28, + "wt": 21, + "cpu": 36, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Filters\\Model\\Schema\\Builder::makeSchema": { + "Spiral\\Filters\\Model\\Schema\\Builder::parseDefinition": { + "ct": 32, + "wt": 127, + "cpu": 138, + "mu": 14976, + "pmu": 0 + } + }, + "Spiral\\Filters\\Model\\Schema\\Builder::parseDefinition": { + "explode": { + "ct": 32, + "wt": 14, + "cpu": 25, + "mu": 13680, + "pmu": 0 + } + }, + "Spiral\\Filters\\Model\\Schema\\InputMapper::map": { + "Spiral\\Filter\\InputScope::getValue": { + "ct": 32, + "wt": 43722, + "cpu": 43733, + "mu": 584, + "pmu": 24568 + } + }, + "Spiral\\Models\\SchematicEntity::__construct": { + "Spiral\\Models\\AbstractEntity::__construct": { + "ct": 2, + "wt": 3, + "cpu": 4, + "mu": 584, + "pmu": 0 + } + }, + "Spiral\\Core\\InterceptableCore::callAction@1": { + "Spiral\\Core\\InterceptorPipeline::callAction@2": { + "ct": 2, + "wt": 77, + "cpu": 78, + "mu": 6088, + "pmu": 0 + } + }, + "Spiral\\Models\\AbstractEntity::toArray": { + "Spiral\\Models\\AbstractEntity::getValue": { + "ct": 2, + "wt": 4, + "cpu": 5, + "mu": 584, + "pmu": 0 + } + }, + "Spiral\\Filters\\Model\\Interceptor\\PopulateDataFromEntityInterceptor::process": { + "Spiral\\Core\\InterceptorPipeline::callAction@3": { + "ct": 2, + "wt": 30, + "cpu": 31, + "mu": 2688, + "pmu": 0 + } + }, + "Spiral\\Core\\InterceptorPipeline::callAction@4": { + "Spiral\\Filters\\Model\\Interceptor\\Core::callAction": { + "ct": 2, + "wt": 3, + "cpu": 5, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Filters\\Model\\Interceptor\\ValidateFilterInterceptor::process": { + "Spiral\\Core\\InterceptorPipeline::callAction@4": { + "ct": 2, + "wt": 11, + "cpu": 11, + "mu": 1296, + "pmu": 0 + } + }, + "Spiral\\Core\\InterceptorPipeline::callAction@3": { + "Spiral\\Filters\\Model\\Interceptor\\ValidateFilterInterceptor::process": { + "ct": 2, + "wt": 20, + "cpu": 23, + "mu": 1992, + "pmu": 0 + } + }, + "Spiral\\Core\\InterceptorPipeline::callAction@2": { + "Spiral\\Filters\\Model\\Interceptor\\PopulateDataFromEntityInterceptor::process": { + "ct": 2, + "wt": 65, + "cpu": 66, + "mu": 5424, + "pmu": 0 + } + }, + "Spiral\\Models\\AbstractEntity::__destruct": { + "Spiral\\Models\\AbstractEntity::flushFields": { + "ct": 2, + "wt": 4, + "cpu": 4, + "mu": 584, + "pmu": 0 + } + }, + "Spiral\\Filters\\Attribute\\Input\\Post::getValue": { + "Spiral\\Filter\\InputScope::getValue": { + "ct": 1, + "wt": 1075, + "cpu": 1075, + "mu": 3832, + "pmu": 28024 + } + }, + "Spiral\\Filters\\Attribute\\Input\\Post::getSchema": { + "Spiral\\Filters\\Attribute\\Input\\AbstractInput::getKey": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Filters\\Attribute\\Input\\Attribute::getValue": { + "Spiral\\Filter\\InputScope::getValue": { + "ct": 1, + "wt": 1483, + "cpu": 1484, + "mu": 1688, + "pmu": 6704 + } + }, + "Spiral\\Filters\\Attribute\\Input\\Attribute::getSchema": { + "Spiral\\Filters\\Attribute\\Input\\AbstractInput::getKey": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 632, + "pmu": 0 + } + }, + "Spiral\\Filters\\Attribute\\Input\\Route::getValue": { + "Spiral\\Filter\\InputScope::getValue": { + "ct": 1, + "wt": 1447, + "cpu": 1448, + "mu": 960, + "pmu": 9080 + } + }, + "Spiral\\Filters\\Attribute\\Input\\Route::getSchema": { + "Spiral\\Filters\\Attribute\\Input\\AbstractInput::getKey": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Filters\\Attribute\\Input\\Server::getValue": { + "Spiral\\Filter\\InputScope::getValue": { + "ct": 1, + "wt": 1537, + "cpu": 1537, + "mu": 11632, + "pmu": 18496 + } + }, + "Spiral\\Http\\Request\\ServerBag::normalize": { + "preg_replace": { + "ct": 2, + "wt": 49, + "cpu": 50, + "mu": 584, + "pmu": 0 + } + }, + "Spiral\\Http\\Request\\ServerBag::get": { + "Spiral\\Http\\Request\\InputBag::get": { + "ct": 2, + "wt": 2473, + "cpu": 2475, + "mu": 944, + "pmu": 18496 + } + }, + "Spiral\\Filters\\Attribute\\Input\\Server::getSchema": { + "Spiral\\Filters\\Attribute\\Input\\AbstractInput::getKey": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Core\\AbstractCore::Spiral\\Core\\{closure}": { + "App\\Controller\\HomeController::__construct": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueueManager": { + "Spiral\\Queue\\QueueManager::__construct": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Queue\\QueueManager::getDefaultDriver": { + "Spiral\\Queue\\Config\\QueueConfig::getDefaultDriver": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Queue\\QueueManager::getConnection": { + "Spiral\\Queue\\QueueManager::resolveConnection": { + "ct": 1, + "wt": 9141, + "cpu": 9184, + "mu": 112272, + "pmu": 70504 + } + }, + "Spiral\\Queue\\Config\\QueueConfig::getConnection": { + "Spiral\\Queue\\Config\\QueueConfig::getConnections": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 600, + "pmu": 0 + } + }, + "Spiral\\Queue\\QueueManager::resolveConnection": { + "Spiral\\Queue\\Queue::__construct": { + "ct": 1, + "wt": 2, + "cpu": 3, + "mu": 584, + "pmu": 0 + } + }, + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler": { + "Spiral\\Queue\\Interceptor\\Consume\\Handler::__construct": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 632, + "pmu": 0 + } + }, + "ReflectionMethod::invokeArgs@1": { + "Spiral\\Queue\\Bootloader\\QueueBootloader::initHandler": { + "ct": 1, + "wt": 1221, + "cpu": 1265, + "mu": 33768, + "pmu": 0 + } + }, + "Spiral\\Queue\\Bootloader\\QueueBootloader::initQueue": { + "Spiral\\Queue\\QueueManager::getConnection": { + "ct": 1, + "wt": 9160, + "cpu": 9203, + "mu": 114896, + "pmu": 70504 + } + }, + "App\\Controller\\HomeController::__get": { + "Spiral\\Prototype\\ClassNode\\Type::name": { + "ct": 1, + "wt": 0, + "cpu": 2, + "mu": 584, + "pmu": 0 + } + }, + "Spiral\\Prototype\\PrototypeRegistry::resolveProperty": { + "array_pop": { + "ct": 2, + "wt": 2, + "cpu": 2, + "mu": 568, + "pmu": 0 + } + }, + "App\\Controller\\HomeController::index": { + "json_encode": { + "ct": 2, + "wt": 3, + "cpu": 4, + "mu": 1064, + "pmu": 0 + } + }, + "Monolog\\Logger::addRecord": { + "Monolog\\Handler\\AbstractProcessingHandler::handle": { + "ct": 1, + "wt": 466, + "cpu": 467, + "mu": 38664, + "pmu": 0 + } + }, + "Monolog\\DateTimeImmutable::__construct": { + "DateTimeImmutable::__construct": { + "ct": 1, + "wt": 6, + "cpu": 6, + "mu": 832, + "pmu": 0 + } + }, + "Monolog\\Processor\\PsrLogMessageProcessor::__invoke": { + "strpos": { + "ct": 1, + "wt": 1, + "cpu": 2, + "mu": 568, + "pmu": 0 + } + }, + "Monolog\\Handler\\AbstractProcessingHandler::handle": { + "Monolog\\Handler\\RotatingFileHandler::write": { + "ct": 1, + "wt": 228, + "cpu": 229, + "mu": 14800, + "pmu": 0 + } + }, + "Monolog\\Formatter\\NormalizerFormatter::normalize": { + "Monolog\\Formatter\\NormalizerFormatter::normalize@1": { + "ct": 8, + "wt": 109, + "cpu": 114, + "mu": 14304, + "pmu": 0 + } + }, + "Monolog\\Formatter\\NormalizerFormatter::normalize@1": { + "Monolog\\Formatter\\NormalizerFormatter::formatDate": { + "ct": 1, + "wt": 14, + "cpu": 15, + "mu": 2800, + "pmu": 0 + } + }, + "Monolog\\Formatter\\NormalizerFormatter::normalize@2": { + "Monolog\\Formatter\\NormalizerFormatter::normalize@3": { + "ct": 708, + "wt": 34109, + "cpu": 34402, + "mu": 267096, + "pmu": 147872 + } + }, + "Monolog\\Utils::jsonEncode": { + "json_encode": { + "ct": 2, + "wt": 5, + "cpu": 6, + "mu": 1048, + "pmu": 0 + } + }, + "Monolog\\Formatter\\NormalizerFormatter::toJson": { + "Monolog\\Utils::jsonEncode": { + "ct": 2, + "wt": 15, + "cpu": 17, + "mu": 1696, + "pmu": 0 + } + }, + "Monolog\\Utils::getClass": { + "strpos": { + "ct": 1, + "wt": 1, + "cpu": 1, + "mu": 536, + "pmu": 0 + } + }, + "Monolog\\DateTimeImmutable::jsonSerialize": { + "DateTimeImmutable::format": { + "ct": 1, + "wt": 3, + "cpu": 5, + "mu": 824, + "pmu": 0 + } + }, + "Monolog\\DateTimeImmutable::__toString": { + "Monolog\\DateTimeImmutable::jsonSerialize": { + "ct": 1, + "wt": 8, + "cpu": 8, + "mu": 1472, + "pmu": 0 + } + }, + "Monolog\\Formatter\\NormalizerFormatter::formatDate": { + "Monolog\\DateTimeImmutable::__toString": { + "ct": 1, + "wt": 10, + "cpu": 10, + "mu": 2136, + "pmu": 0 + } + }, + "Monolog\\Formatter\\NormalizerFormatter::format": { + "Monolog\\Formatter\\NormalizerFormatter::normalize": { + "ct": 1, + "wt": 132, + "cpu": 133, + "mu": 16608, + "pmu": 0 + } + }, + "Monolog\\Formatter\\LineFormatter::format": { + "str_replace": { + "ct": 4, + "wt": 3, + "cpu": 4, + "mu": 1464, + "pmu": 0 + } + }, + "Monolog\\Formatter\\LineFormatter::convertToString": { + "Monolog\\Formatter\\NormalizerFormatter::toJson": { + "ct": 1, + "wt": 7, + "cpu": 7, + "mu": 856, + "pmu": 0 + } + }, + "Monolog\\Formatter\\LineFormatter::stringify": { + "Monolog\\Formatter\\LineFormatter::replaceNewlines": { + "ct": 4, + "wt": 11, + "cpu": 11, + "mu": 1232, + "pmu": 0 + } + }, + "Monolog\\Formatter\\LineFormatter::replaceNewlines": { + "str_replace": { + "ct": 4, + "wt": 3, + "cpu": 5, + "mu": 568, + "pmu": 0 + } + }, + "Monolog\\Handler\\RotatingFileHandler::write": { + "Monolog\\Handler\\StreamHandler::write": { + "ct": 1, + "wt": 213, + "cpu": 214, + "mu": 13504, + "pmu": 0 + } + }, + "Monolog\\Handler\\StreamHandler::write": { + "Monolog\\Handler\\StreamHandler::streamWrite": { + "ct": 1, + "wt": 71, + "cpu": 71, + "mu": 1200, + "pmu": 0 + } + }, + "Monolog\\Handler\\StreamHandler::getDirFromStream": { + "dirname": { + "ct": 1, + "wt": 0, + "cpu": 2, + "mu": 664, + "pmu": 0 + } + }, + "Monolog\\Handler\\StreamHandler::createDir": { + "is_dir": { + "ct": 1, + "wt": 3, + "cpu": 4, + "mu": 552, + "pmu": 0 + } + }, + "Monolog\\Handler\\StreamHandler::streamWrite": { + "fwrite": { + "ct": 1, + "wt": 63, + "cpu": 65, + "mu": 552, + "pmu": 0 + } + }, + "Monolog\\Logger::info": { + "Monolog\\Logger::addRecord": { + "ct": 1, + "wt": 636, + "cpu": 636, + "mu": 51000, + "pmu": 0 + } + }, + "Spiral\\Core\\InterceptorPipeline::callAction@1": { + "Spiral\\Core\\AbstractCore::callAction": { + "ct": 1, + "wt": 115694, + "cpu": 115737, + "mu": 526880, + "pmu": 703480 + } + }, + "Spiral\\Core\\InterceptorPipeline::callAction": { + "Spiral\\Filters\\Interceptor\\FilterInterceptor::process": { + "ct": 1, + "wt": 115760, + "cpu": 115803, + "mu": 596920, + "pmu": 703480 + } + }, + "Spiral\\Router\\CoreHandler::Spiral\\Router\\{closure}@1": { + "Spiral\\Core\\InterceptableCore::callAction": { + "ct": 1, + "wt": 115775, + "cpu": 115819, + "mu": 598504, + "pmu": 703480 + } + }, + "ReflectionFunction::invokeArgs@1": { + "Spiral\\Router\\CoreHandler::Spiral\\Router\\{closure}@1": { + "ct": 1, + "wt": 115783, + "cpu": 115826, + "mu": 599152, + "pmu": 703480 + } + }, + "Nyholm\\Psr7\\Response::getBody": { + "Nyholm\\Psr7\\Stream::create": { + "ct": 1, + "wt": 26, + "cpu": 27, + "mu": 5112, + "pmu": 0 + } + }, + "Nyholm\\Psr7\\Stream::create": { + "fseek": { + "ct": 1, + "wt": 1, + "cpu": 1, + "mu": 536, + "pmu": 0 + } + }, + "Spiral\\Router\\CoreHandler::wrapResponse": { + "Nyholm\\Psr7\\Stream::write": { + "ct": 2, + "wt": 8, + "cpu": 9, + "mu": 1488, + "pmu": 0 + } + }, + "Nyholm\\Psr7\\Stream::write": { + "fwrite": { + "ct": 2, + "wt": 2, + "cpu": 2, + "mu": 856, + "pmu": 0 + } + }, + "Spiral\\Http\\Pipeline::Spiral\\Http\\{closure}@1": { + "Spiral\\Router\\CoreHandler::handle": { + "ct": 1, + "wt": 116875, + "cpu": 116919, + "mu": 755432, + "pmu": 703480 + } + }, + "Spiral\\Http\\Pipeline::process": { + "Spiral\\Http\\Pipeline::Spiral\\Http\\{closure}@1": { + "ct": 1, + "wt": 116881, + "cpu": 116924, + "mu": 755760, + "pmu": 703480 + } + }, + "ReflectionFunction::invokeArgs": { + "Spiral\\Router\\Router::Spiral\\Router\\{closure}": { + "ct": 1, + "wt": 121777, + "cpu": 121820, + "mu": 918024, + "pmu": 836240 + } + }, + "Spiral\\Http\\Pipeline::Spiral\\Http\\{closure}": { + "Spiral\\Router\\Router::handle": { + "ct": 1, + "wt": 121899, + "cpu": 121943, + "mu": 924720, + "pmu": 836240 + } + }, + "main()": { + "Spiral\\Http\\Pipeline::Spiral\\Http\\{closure}": { + "ct": 1, + "wt": 121910, + "cpu": 121953, + "mu": 925336, + "pmu": 836240 + } + }, + "__top__": { + "main()": { + "ct": 1, + "wt": 121942, + "cpu": 121982, + "mu": 925088, + "pmu": 836240 + } + }, + "Monolog\\Formatter\\NormalizerFormatter::normalize@3": { + "Monolog\\Formatter\\NormalizerFormatter::normalize@4": { + "ct": 3540, + "wt": 7459, + "cpu": 9085, + "mu": 600, + "pmu": 12672 + } + } + } +]